美文网首页
Android启动模式

Android启动模式

作者: QM | 来源:发表于2021-07-11 11:28 被阅读0次

    4种启动模式

    • standard 标准模式,默认模式,正常activity task的进出栈。
    • singleTop 栈顶复用,如果刚好是在activity task的栈顶,无需重新创建,直接调用onNewIntent()。

    以上两种方式都是用于单个任务栈,或者单个APP应用进程。

    • singleTask 栈内复用,全局单例,如果activity task栈已经存在,就直接调用,并清除上面的所有activity,也是调用onNewIntent(),可以在同个任务栈或不同任务栈使用。

    • singleInstance 单一实例,重新创建一个任务栈,而且这个任务栈只能有一个activity,如果已经创建了,也是调用onNewIntent(),是不同任务栈的使用。

    这两个在不同任务栈使用,activity跳转会发生task切换,入场动画会不一样。allowTaskReparenting属性不会有task切换,但是是Android9,10失效了。

    taskAffinity :activity的任务栈分组,默认app包名,设置不同taskAffinity,会启动不同任务栈,会发生task切换,最近任务列表多个同名task,只能显示一个,singleInstance 如果有同名的task,taskAffinity 冲突,其他则会被隐藏。最近任务列表看到的task未必活着,看不到未必死了。

    相关文章

      网友评论

          本文标题:Android启动模式

          本文链接:https://www.haomeiwen.com/subject/xnlkpltx.html