APK安装成功后点击"打开",按Home键,在桌面点击图标后应用重启

转载:http://blog.csdn.net/kepoon/article/details/7468688

问题:

安装系统SD卡里面的apk或者原有的程序更新版本的时候,会遇到升级安装成功之后的一个选择——“打开”和“完成”,点击完成没有问题,但是,如果点击了"打开",然后按Home键,从应用程序列表里面选择应用程序图标进入,这个时候就会重新启动了一个应用程序,之后的操作就会出现混乱等问题。

 

分析:

刚开始我还以为是在程序更新的时候导致的,可经过后来一步一步缩小范围,发现只要是点击了“打开”都会出现问题,再测试了一下新浪微博、QQ,发现他们也存在这个问题。为何会出现这种情况呢? 原因是,第一个启动的Activity的launchMode不是singleTop的,在安装完成点击“打开”的时候不会去清理一下Activity的管理队列,那么点击“打开”就把新开的Activity放在原来队列的后面,因此,就会出现上面的问题。

 

解决:

把第一个启动的Avctivity的launchMode改成singleTop的,但是要注意:改成了singleTop之后就不能关掉,否则就不会生效。那这样是不是不好呢?可以在你所有的应用程序之前加一个没有界面的Activity专门解决这个问题。

当然,也可以尝试监听应用程序安装完成的事件,在那里把队列彻底干掉。

根本上还是android的机制问题,像新浪微博、QQ都没有解决这个问题,不一定是解决不了,有可能是“就那样去吧,这就是android”。

posted @ 2017-10-11 17:44  宋者为王  阅读(827)  评论(0编辑  收藏  举报