Commit 569c7e60 authored by fallenstardust's avatar fallenstardust

启动检查功能转移到homeactivity

parent 48d8c6a5
...@@ -9,7 +9,7 @@ android { ...@@ -9,7 +9,7 @@ android {
minSdkVersion 21 minSdkVersion 21
//noinspection ExpiredTargetSdkVersion //noinspection ExpiredTargetSdkVersion
targetSdkVersion 29 targetSdkVersion 29
versionCode 310040928 versionCode 310040930
versionName "3.10.4" versionName "3.10.4"
flavorDimensions "versionCode" flavorDimensions "versionCode"
vectorDrawables.useSupportLibrary = true vectorDrawables.useSupportLibrary = true
......
package cn.garymb.ygomobile.ui.home; package cn.garymb.ygomobile.ui.home;
import static com.ashokvarma.bottomnavigation.ShapeBadgeItem.SHAPE_STAR_4_VERTICES; import static cn.garymb.ygomobile.Constants.URL_HOME_VERSION;
import android.annotation.SuppressLint;
import android.content.Intent; import android.content.Intent;
import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.Gravity; import android.view.Gravity;
import android.view.MenuItem; import android.view.MenuItem;
import android.widget.FrameLayout; import android.widget.FrameLayout;
...@@ -19,6 +24,8 @@ import com.ashokvarma.bottomnavigation.ShapeBadgeItem; ...@@ -19,6 +24,8 @@ import com.ashokvarma.bottomnavigation.ShapeBadgeItem;
import com.ashokvarma.bottomnavigation.TextBadgeItem; import com.ashokvarma.bottomnavigation.TextBadgeItem;
import com.tencent.smtt.sdk.QbSdk; import com.tencent.smtt.sdk.QbSdk;
import java.io.IOException;
import cn.garymb.ygomobile.AppsSettings; import cn.garymb.ygomobile.AppsSettings;
import cn.garymb.ygomobile.Constants; import cn.garymb.ygomobile.Constants;
import cn.garymb.ygomobile.lite.BuildConfig; import cn.garymb.ygomobile.lite.BuildConfig;
...@@ -28,12 +35,20 @@ import cn.garymb.ygomobile.ui.cards.CardSearchFragment; ...@@ -28,12 +35,20 @@ import cn.garymb.ygomobile.ui.cards.CardSearchFragment;
import cn.garymb.ygomobile.ui.cards.DeckManagerFragment; import cn.garymb.ygomobile.ui.cards.DeckManagerFragment;
import cn.garymb.ygomobile.ui.mycard.MycardFragment; import cn.garymb.ygomobile.ui.mycard.MycardFragment;
import cn.garymb.ygomobile.ui.mycard.mcchat.MycardChatFragment; import cn.garymb.ygomobile.ui.mycard.mcchat.MycardChatFragment;
import cn.garymb.ygomobile.ui.plus.DialogPlus;
import cn.garymb.ygomobile.ui.settings.SettingFragment; import cn.garymb.ygomobile.ui.settings.SettingFragment;
import cn.garymb.ygomobile.utils.OkhttpUtil;
import cn.garymb.ygomobile.utils.ScreenUtil; import cn.garymb.ygomobile.utils.ScreenUtil;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.Response;
public abstract class HomeActivity extends BaseActivity implements BottomNavigationBar.OnTabSelectedListener { public abstract class HomeActivity extends BaseActivity implements BottomNavigationBar.OnTabSelectedListener {
long exitLasttime = 0; long exitLasttime = 0;
public static String Version;
private static final int TYPE_GET_VERSION_OK = 0;
private static final int TYPE_GET_VERSION_FAILED = 1;
private BottomNavigationBar bottomNavigationBar; private BottomNavigationBar bottomNavigationBar;
private ShapeBadgeItem mShapeBadgeItem; private ShapeBadgeItem mShapeBadgeItem;
...@@ -49,6 +64,36 @@ public abstract class HomeActivity extends BaseActivity implements BottomNavigat ...@@ -49,6 +64,36 @@ public abstract class HomeActivity extends BaseActivity implements BottomNavigat
public MycardChatFragment fragment_mycard_chatting_room; public MycardChatFragment fragment_mycard_chatting_room;
private Bundle mBundle; private Bundle mBundle;
@SuppressLint("HandlerLeak")
Handler handlerHome = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case TYPE_GET_VERSION_OK:
Version = msg.obj.toString();
Log.i(BuildConfig.VERSION_NAME, Version);
if (!Version.equals(BuildConfig.VERSION_NAME) && !Version.isEmpty()) {
DialogPlus dialog = new DialogPlus(getActivity());
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("https://netdisk.link/YGOMobile_" + Version + ".apk/links"));
startActivity(intent);
dialog.dismiss();
});
dialog.show();
}
break;
case TYPE_GET_VERSION_FAILED:
String error = msg.obj.toString();
Log.e(BuildConfig.VERSION_NAME, error);
break;
}
}
};
@Override @Override
protected void onCreate(@Nullable Bundle savedInstanceState) { protected void onCreate(@Nullable Bundle savedInstanceState) {
...@@ -63,6 +108,7 @@ public abstract class HomeActivity extends BaseActivity implements BottomNavigat ...@@ -63,6 +108,7 @@ public abstract class HomeActivity extends BaseActivity implements BottomNavigat
initQbSdk(); initQbSdk();
// //
checkNotch(); checkNotch();
checkUpgrade();
//showNewbieGuide("homePage"); //showNewbieGuide("homePage");
initBottomNavigationBar(); initBottomNavigationBar();
onNewIntent(getIntent()); onNewIntent(getIntent());
...@@ -302,4 +348,26 @@ public abstract class HomeActivity extends BaseActivity implements BottomNavigat ...@@ -302,4 +348,26 @@ public abstract class HomeActivity extends BaseActivity implements BottomNavigat
protected abstract void openGame(); protected abstract void openGame();
public void checkUpgrade() {
OkhttpUtil.get(URL_HOME_VERSION, new Callback() {
@Override
public void onFailure(Call call, IOException e) {
Message message = new Message();
message.what = TYPE_GET_VERSION_FAILED;
message.obj = e;
handlerHome.sendMessage(message);
Log.i(BuildConfig.VERSION_NAME, "error" + e);
}
@Override
public void onResponse(Call call, Response response) throws IOException {
String json = response.body().string();
Message message = new Message();
message.what = TYPE_GET_VERSION_OK;
message.obj = json;
handlerHome.sendMessage(message);
}
});
}
} }
package cn.garymb.ygomobile.ui.home; package cn.garymb.ygomobile.ui.home;
import static cn.garymb.ygomobile.Constants.ASSET_SERVER_LIST; import static cn.garymb.ygomobile.Constants.ASSET_SERVER_LIST;
import static cn.garymb.ygomobile.Constants.URL_HOME_VERSION;
import static cn.garymb.ygomobile.Constants.URL_YGO233_DATAVER; import static cn.garymb.ygomobile.Constants.URL_YGO233_DATAVER;
import android.annotation.SuppressLint; import android.annotation.SuppressLint;
...@@ -40,7 +39,6 @@ import com.ourygo.assistant.util.Util; ...@@ -40,7 +39,6 @@ import com.ourygo.assistant.util.Util;
import com.stx.xhb.androidx.XBanner; import com.stx.xhb.androidx.XBanner;
import com.tubb.smrv.SwipeMenuRecyclerView; import com.tubb.smrv.SwipeMenuRecyclerView;
import org.apache.commons.lang3.StringUtils;
import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe; import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode; import org.greenrobot.eventbus.ThreadMode;
...@@ -92,14 +90,10 @@ public class HomeFragment extends BaseFragemnt implements OnDuelAssistantListene ...@@ -92,14 +90,10 @@ public class HomeFragment extends BaseFragemnt implements OnDuelAssistantListene
public static final int ID_HOMEFRAGMENT = 0; public static final int ID_HOMEFRAGMENT = 0;
private DuelAssistantManagement duelAssistantManagement; private DuelAssistantManagement duelAssistantManagement;
private HomeActivity activity; private HomeActivity activity;
private WebActivity webActivity;
private static final int TYPE_BANNER_QUERY_OK = 0; private static final int TYPE_BANNER_QUERY_OK = 0;
private static final int TYPE_BANNER_QUERY_EXCEPTION = 1; private static final int TYPE_BANNER_QUERY_EXCEPTION = 1;
private static final int TYPE_RES_LOADING_OK = 2; private static final int TYPE_RES_LOADING_OK = 2;
private static final int TYPE_GET_DATA_VER_OK = 3; private static final int TYPE_GET_DATA_VER_OK = 3;
private static final int TYPE_GET_VERSION_OK = 4;
private static final int TYPE_GET_VERSION_FAILED = 5;
public static String Version;
private static final String ARG_MC_NEWS_LIST = "mcNewsList"; private static final String ARG_MC_NEWS_LIST = "mcNewsList";
private boolean isMcNewsLoadException = false; private boolean isMcNewsLoadException = false;
...@@ -151,7 +145,6 @@ public class HomeFragment extends BaseFragemnt implements OnDuelAssistantListene ...@@ -151,7 +145,6 @@ public class HomeFragment extends BaseFragemnt implements OnDuelAssistantListene
if (!EventBus.getDefault().isRegistered(this)) {//加上判断 if (!EventBus.getDefault().isRegistered(this)) {//加上判断
EventBus.getDefault().register(this); EventBus.getDefault().register(this);
} }
//checkUpgrade();
showExNew(); showExNew();
//showNewbieGuide("homePage"); //showNewbieGuide("homePage");
return layoutView; return layoutView;
...@@ -288,26 +281,6 @@ public class HomeFragment extends BaseFragemnt implements OnDuelAssistantListene ...@@ -288,26 +281,6 @@ public class HomeFragment extends BaseFragemnt implements OnDuelAssistantListene
showExNew(); showExNew();
ll_new_notice.setVisibility(View.GONE); ll_new_notice.setVisibility(View.GONE);
} }
case TYPE_GET_VERSION_OK:
Version = msg.obj.toString();
Log.i(BuildConfig.VERSION_NAME, Version);
if (!Version.equals(BuildConfig.VERSION_NAME) && !Version.isEmpty()) {
DialogPlus dialog = new DialogPlus(getActivity());
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("https://netdisk.link/YGOMobile_" + Version + ".apk/links"));
startActivity(intent);
dialog.dismiss();
});
dialog.show();
}
break;
case TYPE_GET_VERSION_FAILED:
String error = msg.obj.toString();
Log.e(BuildConfig.VERSION_NAME, error);
break;
} }
} }
...@@ -333,28 +306,6 @@ public class HomeFragment extends BaseFragemnt implements OnDuelAssistantListene ...@@ -333,28 +306,6 @@ public class HomeFragment extends BaseFragemnt implements OnDuelAssistantListene
} }
} }
public void checkUpgrade() {
OkhttpUtil.get(URL_HOME_VERSION, new Callback() {
@Override
public void onFailure(Call call, IOException e) {
Message message = new Message();
message.what = TYPE_GET_VERSION_FAILED;
message.obj = e;
handler.sendMessage(message);
Log.i(BuildConfig.VERSION_NAME, "error" + e);
}
@Override
public void onResponse(Call call, Response response) throws IOException {
String json = response.body().string();
Message message = new Message();
message.what = TYPE_GET_VERSION_OK;
message.obj = json;
handler.sendMessage(message);
}
});
}
private void findMcNews() { private void findMcNews() {
isMcNewsLoadException = false; isMcNewsLoadException = false;
tv_banner_loading.setVisibility(View.VISIBLE); tv_banner_loading.setVisibility(View.VISIBLE);
......
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