华为:首次安装过后按home键返回桌面,再次点击图标进入的时候会再次走启动页
我最近做的一个项目,在测试时发现在华为的手机上第一次加载App进入的首页,这时按home键返回桌面,再次点击桌面的图标进入程序,发现又走了启动页才会进入首页
在其他的手机上没有发现这个问题。
大致是因为我的入口activity是启动页,华为手机应该是在开发的时候对这个做了什么特殊的处理,第一次按home键的时候再次进入的时候会再次实例化这个入口activity,从而导致会再重走一遍,
解决方法:在你的入口activity的onCreat()的方法下加入这个代码
// 避免从桌面启动程序后,会重新实例化入口类的activity
if (!this.isTaskRoot()) {
Intent intent = getIntent();
if (intent != null) {
String action = intent.getAction();
if (intent.hasCategory(Intent.CATEGORY_LAUNCHER) && Intent.ACTION_MAIN.equals(action)) {
finish();
return;
}
}
}