activity真正的生命周期

Activity的生命周期对于良好的用户体验和资源管理至关重要。当Activity在栈中移动时,它会经历Active、Paused、Stopped和Inactive四种状态。OPhone Runtime管理Activity状态,并在必要时杀死它们以回收资源。开发者可以通过onCreate、onRestoreInstanceState等生命周期方法来响应状态变化,确保数据和UI状态的保存。Activity的完整生命周期从onCreate开始,到onDestroy结束,但在某些情况下可能不调用onDestroy。
摘要由CSDN通过智能技术生成


 

Activity生命周期

理解Activity的生命周期对应用程序开发来说是至关重要的,这样才能确保您的应用提供了一个很好的用户体验和妥善管理其资源。由于OPhone应用程序不控制自己的进程寿命,由OPhoneRuntime管理每个应用程序进程,但是每个Activity的状态反过来会影响到OPhone Runtime是否将终止当前Activity和还是让它继续运行。

Actvity 堆栈

每个Actvity的状态由它所在Activity栈中的位置所决定,所有当前正在运行的Actvity将遵循照后进先出的原则。当一个新的 Activity启动,当前的Activity将移至堆栈的顶部,如果用户使用Back按钮,或在前台Activity被关闭,下一个Activity被激活并且移至到堆栈的顶部。这个过程如下图所示

<img width="453" height="348" src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image002.jpg" <="" span="">real_src="http://dev.10086.cn/cmdn/wiki/uploads/201006/1276588511PaeN4NtM.png"title=activity真正的生命周期action-data="http%3A%2F%2Fdev.10086.cn%2Fcmdn%2Fwiki%2Fuploads%2F201006%2F1276588511PaeN4NtM.png"action-type=show-slide v:shapes="_x0000_i1025">

Activity状态

随着Activity的创建和销毁,也就会进出栈如上图所示,其中可能会经历以下四种状态:

·                 Active状态:这时候Activity处于栈顶,且是可见的,有焦点的,能够接收用户输入前ActivityOPhone Runtime将试图不惜一切代价保持它活着,甚至杀死其他Activity以确保它有它所需的资源。当另一个Activity变成Active时,当前的将变成Paused状态。

·                 Paused状态:在某些情况下,你的Activity是可见的,但没有焦点,在这时候,Actvity处于Paused状态。例如,如果有一个透明或非全屏幕上的Activity在你的Actvity上面,你的 Activity将。当处于Paused状态时,该Actvity仍被认为是Active的,但是它不接受用户输入事件。在极端情况下,OPhone Runtime将杀死PausedActivity,以进一步回收资源。当一个Actvity完全被遮住时,它将进入Stopped

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值