记录Android7.0以上手机开启分屏后活动的生命周期变化
程序员文章站
2022-03-05 16:09:12
记录Android7.0以上手机开启分屏后活动的生命周期变化(一)华为手机分屏测试(Android10)运行一个App,以MainActivity为例1.打开App时的生命周期onCreate->onStart->onResume2.打开任务列表时的生命周期onPause->onStop3.在任务列表中进行分屏后的生命周期onDestroy->onCreate->onStart->onResume->onPause->onResume...
记录Android7.0以上手机开启分屏后活动的生命周期变化
本文地址:https://blog.csdn.net/qq_40785165/article/details/112565073,转载需附上此链接
(一)华为手机分屏测试(Android10)
运行一个App,以MainActivity为例
1.打开App时的生命周期
onCreate->onStart->onResume
2.打开任务列表时的生命周期
onPause->onStop
3.在任务列表中进行分屏后的生命周期
onDestroy->onCreate->onStart->onResume->onPause->onResume
这里我手机的分屏会自动获取焦点,没有焦点的只会走到onPause,需要自己手动点击activity获取焦点
所以一些播放视频或者动画效果的功能,暂停的功能代码就不能放在onPause里了,应该放在onStop里
4.取消分屏时的生命周期
onPause->onStop->onDestroy->onCreate->onStart->onResume
5.移动分屏时的生命周期
onPause->onStop->onDestroy->onCreate->onStart->onResume
(二).小米手机分屏测试(Android10)
1.打开App时的生命周期
onCreate->onStart->onResume
2.打开任务列表时的生命周期
onPause->onStop
3.进行分屏时的生命周期
onDestroy->onCreate->onStart->onResume
4.回到桌面时的生命周期
onPause
5.回到分屏时的生命周期
onResume
6.移动分屏时的生命周期
onPause->onStop->onDestroy->onCreate->onStart->onResume
7.退出分屏时的生命周期
onPause->onStop->onDestroy->onCreate->onStart->onResume
注:
因为分屏的时候会重新走生命周期,对于fragment尽量使用replace而不是add,数据请求也会多调用几次,
要是介意的同学也可以使用下面的代码在AndroidManifest.xml中配置禁用分屏,分屏的时候系统会有不支持分屏的提示
android:resizeableActivity="false"
以上就是两种手机的分屏时的生命周期测试了,记录下来方便以后写逻辑时多加注意,其他手机由于条件限制没有办法测试,如若有什么不一样的地方欢迎朋友们下方评论区多多指教,大家共同进步!
本文地址:https://blog.csdn.net/qq_40785165/article/details/112565073