1.singleInstance加载模式
假如有三个Activity:A, B, C, 其中B为singleInstance模式,其他为标准模式。在A中启动B,则系统会为B分配一个单独的Task,并将该Task移动前面。此时如果在B中启动C,C不会在B的Task里面,而是会装载到A的Task里,并将A,C所在的Task移到前面;
在C中再次启动B,B的Task又会移到前面,此时如果按返回键,则会返回到C,再按返回键,返回到A;
假如在A中用startActivityForResult启动B,在B中setResult并finish()之后是不会调用A的onActivityResult()方法的,即用startActivityForResult方式调用不同Task中的Activity是不能得到想要的结果的。
2.当用startActivityForResult启动一个Activity并返回后,onActivityResult()会先于onStart和onResume调用。
本文深入探讨了Android中singleInstance加载模式下Activity的行为特性。通过具体示例解释了不同Task之间的Activity启动逻辑及其对任务栈的影响,同时指出了使用startActivityForResult在不同Task间交互时的限制。
1万+

被折叠的 条评论
为什么被折叠?



