Commit 93acdd6d authored by fallenstardust's avatar fallenstardust

检查更新失败时添加跳转外链动态

openGL es设置为默认使用built-in
parent f95cb106
......@@ -30,7 +30,7 @@ public interface Constants {
String PREF_FONT_ANTIALIAS = "pref_key_game_font_antialias";
boolean PREF_DEF_FONT_ANTIALIAS = true;
String PREF_OPENGL_VERSION = "pref_key_game_ogles_config";
int PREF_DEF_OPENGL_VERSION = 1;
int PREF_DEF_OPENGL_VERSION = 2;
String PREF_PENDULUM_SCALE = "pref_key_game_lab_pendulum_scale";
boolean PREF_DEF_PENDULUM_SCALE = true;
String PREF_START_SERVICEDUELASSISTANT = "pref_key_start_serviceduelassistant";
......@@ -170,6 +170,7 @@ public interface Constants {
String WIKI_SEARCH_URL = "https://ygocdb.com/card/";
String URL_HOME_VERSION = "https://ygom.top/ver_code.txt";
String URL_HOME_VERSION_ALT = "https://cdn02.moecube.com:444/ygom-site/ver_code.txt";
String URL_BILIBILI_DYNAMIC = "https://m.bilibili.com/space/16033444/";
String ID1 = "[versionname]";
String ID2 = "[download_link]";
String ID3 = "#pre_release_code";
......
......@@ -7,13 +7,11 @@ import static cn.garymb.ygomobile.Constants.CORE_SKIN_CARD_COVER_SIZE;
import static cn.garymb.ygomobile.Constants.ID1;
import static cn.garymb.ygomobile.Constants.ID2;
import static cn.garymb.ygomobile.Constants.ID3;
import static cn.garymb.ygomobile.Constants.ORI_DECK;
import static cn.garymb.ygomobile.Constants.ORI_PICS;
import static cn.garymb.ygomobile.Constants.ORI_REPLAY;
import static cn.garymb.ygomobile.Constants.PERF_TEST_REPLACE_KERNEL;
import static cn.garymb.ygomobile.Constants.PREF_CHANGE_LOG;
import static cn.garymb.ygomobile.Constants.PREF_CHECK_UPDATE;
import static cn.garymb.ygomobile.Constants.PREF_KEY_WORDS_SPLIT;
import static cn.garymb.ygomobile.Constants.PREF_DATA_LANGUAGE;
import static cn.garymb.ygomobile.Constants.PREF_DECK_DELETE_DILAOG;
import static cn.garymb.ygomobile.Constants.PREF_DEL_EX;
......@@ -25,6 +23,7 @@ import static cn.garymb.ygomobile.Constants.PREF_IMAGE_QUALITY;
import static cn.garymb.ygomobile.Constants.PREF_IMMERSIVE_MODE;
import static cn.garymb.ygomobile.Constants.PREF_JOIN_QQ;
import static cn.garymb.ygomobile.Constants.PREF_KEEP_SCALE;
import static cn.garymb.ygomobile.Constants.PREF_KEY_WORDS_SPLIT;
import static cn.garymb.ygomobile.Constants.PREF_LOCK_SCREEN;
import static cn.garymb.ygomobile.Constants.PREF_ONLY_GAME;
import static cn.garymb.ygomobile.Constants.PREF_OPENGL_VERSION;
......@@ -39,6 +38,7 @@ import static cn.garymb.ygomobile.Constants.PREF_WINDOW_TOP_BOTTOM;
import static cn.garymb.ygomobile.Constants.SETTINGS_AVATAR;
import static cn.garymb.ygomobile.Constants.SETTINGS_CARD_BG;
import static cn.garymb.ygomobile.Constants.SETTINGS_COVER;
import static cn.garymb.ygomobile.Constants.URL_BILIBILI_DYNAMIC;
import static cn.garymb.ygomobile.Constants.URL_HOME_VERSION;
import static cn.garymb.ygomobile.ui.home.HomeActivity.Cache_pre_release_code;
import static cn.garymb.ygomobile.ui.home.HomeActivity.pre_code_list;
......@@ -59,19 +59,13 @@ import android.preference.ListPreference;
import android.preference.Preference;
import android.text.TextUtils;
import android.util.Log;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.FrameLayout;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.Toast;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.bumptech.glide.signature.MediaStoreSignature;
import org.greenrobot.eventbus.EventBus;
import java.io.BufferedReader;
......@@ -101,7 +95,6 @@ import cn.garymb.ygomobile.utils.ServerUtil;
import cn.garymb.ygomobile.utils.SharedPreferenceUtil;
import cn.garymb.ygomobile.utils.SystemUtils;
import cn.garymb.ygomobile.utils.YGOUtil;
import cn.garymb.ygomobile.utils.glide.GlideCompat;
import ocgcore.DataManager;
import okhttp3.Call;
import okhttp3.Callback;
......@@ -166,7 +159,7 @@ public class SettingFragment extends PreferenceFragmentPlus {
bind(PREF_FONT_SIZE, mSettings.getFontSize());
bind(PREF_ONLY_GAME, mSettings.isOnlyGame());
bind(PREF_KEEP_SCALE, mSettings.isKeepScale());
bind(PREF_USER_PRIVACY_POLICY,getString(R.string.about_user_privacy_policy));
bind(PREF_USER_PRIVACY_POLICY, getString(R.string.about_user_privacy_policy));
isInit = false;
}
......@@ -276,51 +269,6 @@ public class SettingFragment extends PreferenceFragmentPlus {
return true;
}
@SuppressLint("HandlerLeak")
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case TYPE_SETTING_GET_VERSION_OK:
if (msg.obj.toString().contains(ID1) && msg.obj.toString().contains(ID2) && msg.obj.toString().contains(ID3)) {
Version = msg.obj.toString().substring(msg.obj.toString().indexOf(ID1) + ID1.length(), msg.obj.toString().indexOf(";"));//截取版本号
Cache_link = msg.obj.toString().substring(msg.obj.toString().indexOf(ID2) + ID2.length(), msg.obj.toString().indexOf("$"));//截取下载地址
Cache_pre_release_code = msg.obj.toString().substring(msg.obj.toString().indexOf(ID3) + ID3.length() + 1);//截取先行-正式对照文本
if (!TextUtils.isEmpty(Cache_pre_release_code)) {
arrangeCodeList(Cache_pre_release_code);//转换成两个数组
}
if (Version.compareTo(BuildConfig.VERSION_NAME) > 0 && !TextUtils.isEmpty(Version) && !TextUtils.isEmpty(Cache_link)) {
DialogPlus dialog = new DialogPlus(getContext());
dialog.setMessage(R.string.Found_Update);
dialog.setLeftButtonText(R.string.download_home);
dialog.setLeftButtonListener((dlg, s) -> {
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(Cache_link));
startActivity(intent);
dialog.dismiss();
});
dialog.show();
} else {
YGOUtil.showTextToast(R.string.Already_Lastest);
}
} else {
YGOUtil.showTextToast(R.string.Checking_Update_Failed);
}
break;
case TYPE_SETTING_GET_VERSION_FAILED:
++FailedCount;
if (FailedCount <= 2) {
checkUpgrade(URL_HOME_VERSION);
} else {
YGOUtil.showTextToast(getString(R.string.Checking_Update_Failed) + msg.obj.toString());
}
break;
}
}
};
@Override
public boolean onPreferenceClick(Preference preference) {
String key = preference.getKey();
......@@ -496,7 +444,52 @@ public class SettingFragment extends PreferenceFragmentPlus {
showFileChooser(preference, ".so", mSettings.getResourcePath(), "内核文件选择");
}
return false;
}
} @SuppressLint("HandlerLeak")
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case TYPE_SETTING_GET_VERSION_OK:
if (msg.obj.toString().contains(ID1) && msg.obj.toString().contains(ID2) && msg.obj.toString().contains(ID3)) {
Version = msg.obj.toString().substring(msg.obj.toString().indexOf(ID1) + ID1.length(), msg.obj.toString().indexOf(";"));//截取版本号
Cache_link = msg.obj.toString().substring(msg.obj.toString().indexOf(ID2) + ID2.length(), msg.obj.toString().indexOf("$"));//截取下载地址
Cache_pre_release_code = msg.obj.toString().substring(msg.obj.toString().indexOf(ID3) + ID3.length() + 1);//截取先行-正式对照文本
if (!TextUtils.isEmpty(Cache_pre_release_code)) {
arrangeCodeList(Cache_pre_release_code);//转换成两个数组
}
if (Version.compareTo(BuildConfig.VERSION_NAME) > 0 && !TextUtils.isEmpty(Version) && !TextUtils.isEmpty(Cache_link)) {
DialogPlus dialog = new DialogPlus(getContext());
dialog.setMessage(R.string.Found_Update);
dialog.setLeftButtonText(R.string.download_home);
dialog.setLeftButtonListener((dlg, s) -> {
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(Cache_link));
startActivity(intent);
dialog.dismiss();
});
dialog.show();
} else {
showBilibiliDialog();
}
} else {
YGOUtil.showTextToast(R.string.Checking_Update_Failed);
}
break;
case TYPE_SETTING_GET_VERSION_FAILED:
++FailedCount;
if (FailedCount <= 2) {
checkUpgrade(URL_HOME_VERSION);
} else {
showBilibiliDialog();
}
break;
}
}
};
@Override
protected void onChooseFileFail(Preference preference) {
......@@ -760,5 +753,22 @@ public class SettingFragment extends PreferenceFragmentPlus {
}
private void showBilibiliDialog() {
DialogPlus dialog = new DialogPlus(getContext());
Intent intent = new Intent(Intent.ACTION_VIEW);
dialog.setMessage(R.string.Already_Lastest);
dialog.setLeftButtonText(R.string.Cancel);
dialog.setLeftButtonListener((dlg, s) -> {
dialog.dismiss();
});
dialog.setRightButtonText(R.string.OK);
dialog.setRightButtonListener((dlg, s) -> {
intent.setData(Uri.parse(URL_BILIBILI_DYNAMIC));
startActivity(intent);
dialog.dismiss();
});
dialog.show();
}
}
......@@ -261,7 +261,7 @@
<string name="avatarSelect">Toca para elegir el ávatar</string>
<string name="ClickLinkArrows">Activar flechas</string>
<string name="tip_no_permission" formatted="false">El permiso %s está desactivado</string>
<string name="Already_Lastest">No hay nuevas versiones</string>
<string name="Already_Lastest">No se ha encontrado ninguna nueva versión. ¿Por qué no revisas las actualizaciones del autor para más detalles?</string>
<string name="about_immersive_mode">Oculta automáticamente los botones virtuales</string>
<string name="Download">Descargar</string>
<string name="Downloading">Descargando, espera...</string>
......
......@@ -257,7 +257,7 @@
<string name="avatarSelect">アバタを選択してください</string>
<string name="ClickLinkArrows">クリック矢印を発光する</string>
<string name="tip_no_permission" formatted="false"> %s 権限はあなたに禁止されています</string>
<string name="Already_Lastest">最新バージョンです</string>
<string name="Already_Lastest">新バージョンなし。作者の最新情報を確認?</string>
<string name="about_immersive_mode">开启它的同时会自动隐藏虚拟键</string>
<string name="Download">ダウンロード</string>
<string name="Downloading">ダウンロード中…</string>
......
......@@ -260,9 +260,9 @@
<string name="bgSelect">배경화면으로 사용할 이미지를 선택하세요</string>
<string name="avatarSelect">아바타로 사용할 이미지를 선택하세요</string>
<string name="ClickLinkArrows">링크 마커 클릭</string>
<string name="Already_Lastest">이미 최신 버전입니다</string>
<string name="Already_Lastest">새 버전이 발견되지 않았어요. 작가의 활동 기록을 확인해볼래요? 최근 소식이 있을 수 있어요</string>
<string name="tip_no_permission" formatted="false">%s 권한은 사용자가 금지했습니다</string>
<string name="about_immersive_mode">켜면 가상 키가 자동으로 숨겨집니다</string>
<string name="about_immersive_mode">새 버전이 발견되지 않았어요. 작가의 활동 기록을 확인해볼래요? 최근 소식이 있을 수 있어요</string>
<string name="Download">다운로드</string>
<string name="Downloading">다운로드 중입니다. 잠시 기다려 주십시오.</string>
<string name="Update_Found">새로운 버전 발견</string>
......
......@@ -253,7 +253,7 @@
<string name="avatarSelect">Toque no avatar para alterar a imagem</string>
<string name="ClickLinkArrows">Toque nas setas</string>
<string name="tip_no_permission" formatted="false">A permissão %s foi negada.</string>
<string name="Already_Lastest">Você já possui a versão mais recente do YGOMobile!</string>
<string name="Already_Lastest">Nenhuma nova versão encontrada. Por que não verificar as atualizações do autor? Talvez haja notícias importantes</string>
<string name="about_immersive_mode">O teclado virtual será ocultado</string>
<string name="Download">Baixar</string>
<string name="Downloading">Baixando, por favor espere...</string>
......
......@@ -260,7 +260,7 @@
<string name="avatarSelect">点击相应头像选择文件</string>
<string name="ClickLinkArrows">点亮箭头</string>
<string name="tip_no_permission" formatted="false">权限 %s 被你禁止了</string>
<string name="Already_Lastest">未发现新版本</string>
<string name="Already_Lastest">未发现新版本,要不去作者动态看看?或许有最新消息</string>
<string name="about_immersive_mode">开启它的同时会自动隐藏虚拟键</string>
<string name="Download">下载</string>
<string name="Downloading">下载中,请稍候</string>
......
......@@ -265,7 +265,7 @@
<string name="bgSelect">click background and select files</string>
<string name="avatarSelect">click avatar and select files</string>
<string name="ClickLinkArrows">click link arrows</string>
<string name="Already_Lastest">Already be the Lastest Version</string>
<string name="Already_Lastest">No new version available. Check the author\'s feed?</string>
<string name="tip_no_permission" formatted="false">the permission %s is denied.</string>
<string name="about_immersive_mode">it will hide virtual-key</string>
<string name="Download">Download</string>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment