安卓学习17

后台启动 Activity 失效

  场景:如果我们正在玩着游戏,此时手机后台可能有个下载某 App 的任务在执行。当 App 下载完之后突然弹出安装界面,中断了游戏界面的交互,这种情况会造成用户体验极差,而最终用户的吐槽对象都会转移到 Android 手机或者 Android 系统本身。Android10(API29)开始,对后台进程启动Activity做了一定限制,目的就是尽可能的避免当前前台用户的交互被打断,保证当前屏幕上涨势的内容不受影响。解决方法:Android官方建议我们使用通知来替代直接启动Activity操作。

Android启动activity之taskAffinity

  单纯使用 taskAffinity 不能导致 Activity 被创建在新的任务栈中,需要配合 singleTask 或者 singleInstance!

  taskAffinity + allowTaskReparentingallowTaskReparenting 赋予 Activity 在各个 Task 中间转移的特性。一个在后台任务栈中的 Activity A,当有其他任务进入前台,并且 taskAffinity 与 A 相同,则会自动将 A 添加到当前启动的任务栈中

原文地址:https://www.cnblogs.com/092e/p/14916610.html