Android/活动的生命周期
< Android
综述
编辑随着用户在设备上打开,离开,返回,关闭应用软件(App),应用中的活动实例(Activity instance)在整个生命周期(Lifecycle)中切换不同的状态。
实例
编辑当您初次启动应用程序,活动会实例化,来到系统前端被您所看到,并捕捉用户焦点(User focus)。在这个过程中,Android操作系统调用此活动中的一系列生命周期方法。这些生命周期方法设置了用户界面(User Interface)和其他组件。
如果用户执行了一个操作,启动了另一个应用,或者切换到另一个正在运行的应用,使当前活动被转移到后台变得不可见,系统会调用另一套生命周期方法。活动虽然变为不可见状态,但依旧保持完整。
阶段
编辑- 创建(Created)
- 启动(Started)
- 暂停(Paused)
- 恢复(Resumed)
- 停止(Stopped)
- 重启(Restarted)
- 销毁(Destroyed)
- 重建(Recreated)
意义
编辑生命周期的回调方法以内,您可以声明在用户离开、返回活动时活动如何行为。
例如,如果您正在构建一个流媒体视频播放器,当用户切换到其他应用的时候,可能要暂停视频且断开它的网络连接节约流量。当用户返回时,应用将重新连接到网络,使用户从同一断点继续观看。这样在用户使用其他应用的时候就不会耗费网络流量/带宽和CPU资源。
在这一节当中,我们将介绍重要的生命周期回调方法。这些方法是所有活动实例共同具有的。还会介绍如何使用它们,以达到相应目的:您的应用如何执行用户期望的行为,如何避免耗尽系统资源等。
开始/创建
编辑与传统的C,C++,Java程序不同的是,Android不需要从main()方法开始运行。Android系统通过特殊的回调方法初始化活动实例的代码,这些回调方法对应其生命周期的具体阶段。有一系列方法用来启动活动,也有一系列方法销毁活动。这些方法就是Android应用的入口和出口,而不是一个main()方法。
您将要运用的第一个生命周期阶段就是开始/创建一个活动实例。