Activity被创建多个实例的解决方法

最初我在写通知的时候对Android的启动模式不是很清晰导致每一次点击通知消息都会创建一次MainActivity,经过浏览帖子,对启动模式理解加深,得出解决办法。

在AndroidMainfestwen文件中注册Activity时将需要被跳转的Activity的启动模式设置为SingleTask即可


相关代码

我第一次将其设置为SingleInstance,也是可行的,但某些场景下多任务界面会有两个自己创建的应用,还会遇到无法启动Activity的bug,其原因在于SingleInstance是在单独的一个Task栈中,例如用户退出登陆时结束所有activity回到登陆界面,此时使用了SingleInstance的activity无法被结束,多任务界面会将其显示出来,点击后就会出现无法启动activity的bug。而SingleTask启动模式会一直使用一个Task栈,不会单独重新创建Task栈。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容