Booty Calls v1.2.156版本的 MD5 值为:919c7e4dc831ea1adbaf506a3cc1a198
以下内容为反编译后的 DmmGamesAndroidOptionalStoreMenu.java 源代码,内容仅作参考
package com.dmm.games.android.menu.store.optional;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import com.dmm.games.android.menu.DmmGamesAndroidMenu;
import com.dmm.games.android.menu.store.DmmGamesAndroidStoreMenu;
import com.dmm.games.android.util.store.DmmGamesAndroidStoreUtil;
import com.dmm.games.api.mobile.model.ConfigGet;
import com.dmm.games.log.Log;
import com.dmm.games.sdk.setting.DmmGamesSdkSetting;
import com.dmm.games.sdk.setting.Environment;
import java.util.Locale;
public class DmmGamesAndroidOptionalStoreMenu extends DmmGamesAndroidStoreMenu {
private static final String ADULT_DOMAIN = "co.jp";
private static final String ANNOUNCE_WEB_PAGE_URL_FORMAT = "https://message.games.dmm.%s/list/";
private static final String GENERAL_DOMAIN = "com";
private static final String MY_GAME_WEB_PAGE_URL_FORMAT_PROD = "https://library.games.dmm.%s/";
private static final String MY_GAME_WEB_PAGE_URL_FORMAT_STG = "https://library.stg.games.dmm.%s/";
private static final String UPDATE_ACTIVITY_CLASS_NAME = "com.dmm.games.android.sdk.store.optional.DmmGamesUpdateGameActivity";
@Override
public void openUpdateView(Context context) {
try {
Intent intent = new Intent(context, Class.forName(UPDATE_ACTIVITY_CLASS_NAME));
if (!(context instanceof Activity)) {
intent.setFlags(268435456);
}
context.startActivity(intent);
} catch (Throwable th) {
th.printStackTrace(Log.err());
super.openUpdateView(context);
}
}
@Override
public void openMenuItem(Context context, DmmGamesAndroidMenu.Kind kind) {
if (!isHandleMenuKind(context, kind)) {
super.openMenuItem(context, kind);
return;
}
String transitionUrl = getTransitionUrl(kind);
if (transitionUrl == null) {
super.openMenuItem(context, kind);
} else {
openBrowser(context, transitionUrl);
}
}
private String getTransitionUrl(DmmGamesAndroidMenu.Kind kind) {
if (kind == DmmGamesAndroidMenu.Kind.ANNOUNCEMENT) {
return getAnnounceWebPageUrl();
}
if (kind == DmmGamesAndroidMenu.Kind.MY_GAME) {
return getMyGamePageUrl();
}
return null;
}
private boolean isHandleMenuKind(Context context, DmmGamesAndroidMenu.Kind kind) {
return (kind == DmmGamesAndroidMenu.Kind.ANNOUNCEMENT || kind == DmmGamesAndroidMenu.Kind.MY_GAME) && !DmmGamesAndroidStoreUtil.isGamesStoreInstalled(context);
}
private String getMyGamePageUrl() {
DmmGamesSdkSetting setting = getSetting();
return String.format(Locale.ENGLISH, (setting == null || setting.getEnvironment() != Environment.STAGING) ? MY_GAME_WEB_PAGE_URL_FORMAT_PROD : MY_GAME_WEB_PAGE_URL_FORMAT_STG, getDomain());
}
private String getAnnounceWebPageUrl() {
return String.format(Locale.ENGLISH, ANNOUNCE_WEB_PAGE_URL_FORMAT, getDomain());
}
private String getDomain() {
return isAdult() ? ADULT_DOMAIN : GENERAL_DOMAIN;
}
private boolean isAdult() {
ConfigGet.Entry configGet = getConfigGet();
return configGet != null && configGet.getSite() == ConfigGet.Site.ADULT;
}
}