管理Activity的生命周期(2)Pausing和Resuming
2014-12-29 14:15
218 查看
当半透明的Activity覆盖之前的Activity的时候,之前的Activity就处于onPauseed的状态了,当用户回到了之前的Activity的时候,之前的Activity回到的是onResumed的状态了。
onPause()(ActivityA)->onCreate(ActivityB)->onStart(ActivityB)->onResume()(ActivityB)->onPause(ActivityB)->onResume()(ActivityA)->onStop()->onDestroy()
![](http://img.blog.csdn.net/20141229142147796)
当Activity处于Paused的状态,再次回来,直接处于的是Resumed的状态。
暂停Activity
当系统调用onPause()的时候,意味着Activity还是部分可见的,但是大多情况下,用户是即将要离开这个Activity的并且它会进入Stopped状态。onPaused()接口回调用来:
(1)停止动画或者是其他将要进行的消耗CPU的动作。
(2)提交还未保存的数据操作。如果用户希望这种变化是永久地保存在他们离开的时候。
(3)释放系统资源,比如广播接收者,处理传感器(比如GPS),或者是当你的Activity暂停了和用户不需要的任何可能影响到电池寿命的资源。
比如,照相时在onPause中这样:
Resume Activity
还是照相的例子:
onPause()(ActivityA)->onCreate(ActivityB)->onStart(ActivityB)->onResume()(ActivityB)->onPause(ActivityB)->onResume()(ActivityA)->onStop()->onDestroy()
当Activity处于Paused的状态,再次回来,直接处于的是Resumed的状态。
暂停Activity
当系统调用onPause()的时候,意味着Activity还是部分可见的,但是大多情况下,用户是即将要离开这个Activity的并且它会进入Stopped状态。onPaused()接口回调用来:
(1)停止动画或者是其他将要进行的消耗CPU的动作。
(2)提交还未保存的数据操作。如果用户希望这种变化是永久地保存在他们离开的时候。
(3)释放系统资源,比如广播接收者,处理传感器(比如GPS),或者是当你的Activity暂停了和用户不需要的任何可能影响到电池寿命的资源。
比如,照相时在onPause中这样:
@Override public void onPause() { super.onPause(); // Always call the superclass method first // Release the Camera because we don't need it when paused // and other activities might need to use it. if (mCamera != null) { mCamera.release() mCamera = null; } }记住:密集型的CPU操作最好不要在onPause()方法中执行,这个会减慢可见的转换过程(数据库操作最好不要在这里写),如果想写,就写在onStop()中。
Resume Activity
还是照相的例子:
@Override public void onResume() { super.onResume(); // Always call the superclass method first // Get the Camera instance as the activity achieves full user focus if (mCamera == null) { initializeCamera(); // Local method to handle camera init } }
相关文章推荐
- Android training 管理Activity生命周期之暂停/恢复Activity(Pausing and Resuming an Activity)
- Activity生命周期理解之二 Pausing and Resuming an Activity
- Activity生命周期的管理(序)
- Android Activity生命周期管理
- Activity 生命周期及其栈管理方式
- MVP项目研究——AppManager融合Dagger2和androidEventbus管理Activity的生命周期
- Android文档Training之管理Activity生命周期
- 【Android Developers Training】 14. 序言:管理Activity生命周期
- Managing the Activity Lifecycle 管理活动的生命周期
- 在Android工程中管理Activity的生命周期
- 管理 Activity 生命周期
- Activity 生命周期及其栈管理方式
- Android官方开发文档Training系列课程中文版:管理Activity的生命周期之暂停和恢复Activity
- Android Activity---管理Activity的生命周期
- Android学习路线(十三)Activity生命周期——暂停和恢复(Pausing and Resuming )一个Activity
- Android学习路线(十一)管理Activity的生命周期
- Android apk动态加载机制的研究(二):资源加载和activity生命周期管理
- 朝花夕拾-android 自定义application 管理activity的生命周期
- Android 插件化原理解析(5):Activity 生命周期管理(下)
- 【转】Android Activity生命周期管理