android启动模式singleInstance的疑惑
有3个activity:MainActivity为默认启动,A为singleTask,B为singleInstance
场景1:
a、启动activity
E/MainActivity onCreate: taskId:495
E/MainActivity onStart: taskId:495
E/MainActivity onResume: taskId:495
b、在MainActivity中点击按钮启动B
E/MainActivity onPause: taskId:495
E/B onCreate: taskId:496
E/B onStart: taskId:496
E/B onResume: taskId:496
E/MainActivity onStop: taskId:495
c、按下home键
E/B onPause: taskId:496
E/B onStop: taskId:496
d、点击icon重新回到app
E/MainActivity onStart: taskId:495
E/MainActivity onResume: taskId:495
why?
———————————-
刚才和同事讨论结果:通过icon启动app,默认都会到app所在默认栈中,显示栈中最上层的activity。
———————————-
场景2:
a、启动activity
E/MainActivity onCreate: taskId:495
E/MainActivity onStart: taskId:495
E/MainActivity onResume: taskId:495
b、在MainActivity中点击按钮启动B
E/MainActivity onPause: taskId:495
E/B onCreate: taskId:496
E/B onStart: taskId:496
E/B onResume: taskId:496
E/MainActivity onStop: taskId:495
c、按下home键
E/B onPause: taskId:496
E/B onStop: taskId:496
d、点击icon重新回到app
E/MainActivity onStart: taskId:495
E/MainActivity onResume: taskId:495
d、点击返回键
E/MainActivity onPause: taskId:495
E/MainActivity onStop: taskId:495
E/MainActivity onDestroy: taskId:495
程序退出了!!!
why?为什么d步骤没有回到B页面?那么此时B activity还在后台?
———————————-
求解…
———————————-
场景3:
a、启动activity
E/MainActivity onCreate: taskId:495
E/MainActivity onStart: taskId:495
E/MainActivity onResume: taskId:495
b、在MainActivity中点击按钮启动A,启动B
E/MainActivity onPause: taskId:495
E/B onCreate: taskId:496
E/B onStart: taskId:496
E/B onResume: taskId:496
E/MainActivity onStop: taskId:495
c、按下返回键
E/B onPause: taskId:496
E/A onCreate: taskId:495
E/A onStart: taskId:495
E/A onResume: taskId:495
E/B onStop: taskId:496
E/B onDestroy: taskId:496
why?为什么b步骤先后启动A、B只启动了B页面,c步骤却启动了A页面?
———————————-
求解…
———————————-
更多相关文章
- 高级Redis应用进阶课 一站式Redis解决方案
- android TabHost简单使用
- MTK 6573平台 android 2.3系统上添加维文的详细步骤
- android activty的生命周期
- Android(安卓)Audio Debug相关方法
- Android—fragment无法remove
- 在android 4.2.2上调试MU609步骤,WCDMA
- cordova学习四:事件Events
- Android(安卓)camera摄像头对焦,zoom的通知事件回调,告诉java应用