Android activity生命周期的变化及应用场景

本文深入解析了Android中Activity的生命周期,包括不同场景下Activity状态的变化,如启动、暂停、停止及销毁等过程。同时,探讨了横竖屏切换时Activity生命周期的影响因素,以及不同Android系统版本下的行为差异。

大家好,今天和大家分享一道关于activity生命周期的面试题,希望可以帮助大家更好的理解activity生命周期这一块,废话不多说,开干!

首先,咱们看一下官方给我们的activity生命周期图

那么activity生命周期为:

onCreate()-->onStart()-->onResume()-->onPause()-->onStop()-->onDestroy()

接下来看一下面试官一般会怎么问:

①ActivityA跳转ActivityB执行哪些生命周期

答:ActivityA:onPause ->ActivityB:( onCreate - > onStart - >onResume )- >ActivityA: onStop

当点击跳转之后,activityA的变化,如图

activityB的变化,如图

activityA的变化,如图

②ActivityB返回ActivityA执行哪些生命周期:

ActivityB:onPause - >ActivityA(onRestart -> onStart - > onResume) ->ActivityB:(onStop - >onDestory)

当点击跳转之后,activityB的变化,如图

activityA的变化,如图

activityB的变化,如图

③点击返回键,activity执行那些生命周期:

onPause()-->onStop()-->onDestroy

再次重启页面执行的生命周期:

--->onCreate-->onstart-->onResume

④点击home键时,activity生命周期的变化:

onPause-->onStop

再次重启页面执行的生命周期:

⑤切换横竖屏时,activity生命周期的变化:

当在清单文件中不配置android:configChanges="orientation"的 时候,activity会重建

当在清单文件中配置android:configChanges="orientation"的 时候,不会创建activity,如图

当在清单文件中配置android:configChanges="orientation|keyboardHidden"的 时候,不会创建activity,如图

当在清单文件中配置android:configChanges="orientation|keyboardHidden|screenSize"的 时候,不会创建activity,如上图

看了网上有些帖子说,横竖屏切换时activity生命周期不仅跟清单文件AndroidManifest.xml中android:configChanges属性有关,而且还跟手机系统的版本有关,因为在Android 4.0及其以上系统上,还跟程序的targetSdkVersion设置有关,大家可以参考这个帖子:https://blog.youkuaiyun.com/xiaoli100861/article/details/50855152  进行更深一步的研究,顺便说一下我的手机是Android 8.0的。

好啦,就总结到这儿啦!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值