Android通过本地安装(非adb)第一次切到后台再次进入重启问题解决方案
本人在小米6X遇到这个问题,查询是因为部分手机厂商通过本地安装intent缺少Category问题,会出现第一次安装启动后切到后台,然后从桌面图标点开应用重启问题,(Show only selected application)打印生命周期等未发现异常,控制台切到(No Filters查看全部)发现 activityStartTrigger: not whiteListed 红字异常,整理以下三种方式
第一种:
在Main入口Activity添加一下代码(小米6X机型测试第一次解决了问题,当不销毁应用切到后台在打开会出现Activity栈异常):
if((getIntent().getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0){ finish(); return; }
第二种:
在MainActivity添加(部分机型无效)
android:alwaysRetainTaskState="true"
android:clearTaskOnLaunch="false"
第三种(推荐):
在MainActivity代码中添加(Super后面)
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (!isTaskRoot()) { finish(); return; }