深入理解Activity的生存期(一)之完整生存期

在一个Activity从创建到销毁的完整的生存期内,它会经历活动生存期和可见生存期的一次或者多次重复,

完整生存期:

Activity的完整生存期是指对onCreate方法的第一次调用和对onDestroy方法的最后一次调用之间的时间范围。有时候还会发生一个Activity的进程被终止,却没调用Destroy的情况。

使用onCreate方法来初始化Activity:inflate用户界面,得到对Fragment的引用,分配对类变量的引用,将数据绑定到控件,并启动Service和定时器。如果Activity被运行时意外终止,onCreate方法接受一个包含UI状态的Bundle对象,该对象在最后一次调用onSaveInstanceState时保存的。应该使用这个Bundle将UI恢复为上一次的状态,这里通过onCreate方法,也可以通过重写onRestoreInstanceState来实现。

通过重写onDestroy来清理onCrete创建的所有资源,并保证所有的外部链接都关闭了(如网络或者数据库连接)。

深入理解Activity的生存期(一)之完整生存期

时间: 2024-12-29 06:39:59

深入理解Activity的生存期(一)之完整生存期的相关文章

理解Activity中的方法回调

理解Android中Activity的方法回调 这篇文章主要介绍了理解Android中Activity的方法回调,本文用一个完整实例模拟了Activity方法回调的过程,从而加深理解Activity的方法回调思想,需要的朋友可以参考下 为什么需要方法回调? 方法回调是功能定义和功能分离的一种手段,是一种松耦合的设计思想.在JAVA中回调是通过接口来实现的.作为一种系统架构,必须要有自己的运行环境,并且要提供用户的实现接口. 下面通过实例来模拟一下Android中Activity的方法回调思想.A

ui主线程控件的更新就让这个activity的异步任务做完整

项目中使用的SingleMessageView,控件实例化后,点击用户头像,此时跳转到UserInfo里查看这个用户的头像.用户名.签名.标签. 之前,师兄在SingleMessage里写了个头像的点击响应,点击用户头像,把用户的用户名通过intent传给UserInfo,同时执行想服务器获取这个用户的签名和标签的异步任务,把这两个值也通过同一个intent传递过去,然后UserInfo的onResume()函数接收intent,进行主线程ui布局的更新,源代码如下: //other用户头像响应

深入理解Activity启动流程(四)–Activity Task的调度算法

本系列博客将详细阐述Activity的启动流程,这些博客基于Cm 10.1源码研究. 深入理解Activity启动流程(一)--Activity启动的概要流程 深入理解Activity启动流程(二)--Activity启动相关类的类图 深入理解Activity启动流程(三)--Activity启动的详细流程1 深入理解Activity启动流程(三)--Activity启动的详细流程2 前面两篇博客介绍了Activity的详细启动流程,提到ActivityStack类的startActivityU

<转>深入理解Activity启动流程(一)–Activity启动的概要流程

本文原创作者:Cloud Chou. 原文地址:http://www.cloudchou.com/android/post-788.html Android中启动某个Activity,将先启动Activity所在的应用.应用启动时会启动一个以应用包名为进程名的进程,该进程有一个主线程,叫ActivityThread,也叫做UI线程. 本系列博客将详细阐述Activity的启动流程,这些博客基于Cm 10.1源码研究. 深入理解Activity启动流程(二)--Activity启动相关类的类图 深

<转>深入理解Activity启动流程(二)–Activity启动相关类的类图

本文原创作者:Cloud Chou. 出处:本文链接 本系列博客将详细阐述Activity的启动流程,这些博客基于Cm 10.1源码研究. 在介绍Activity的详细启动流程之前,先为大家介绍Activity启动时涉及到的类,这样大家可以有大概的了解,不至于在细节中迷失. 深入理解Activity启动流程(一)--Activity启动的概要流程 深入理解Activity启动流程(三)--Activity启动的详细流程1 深入理解Activity启动流程(三)--Activity启动的详细流程2

深入理解Activity启动流程(二)–Activity启动相关类的类图

本文原创作者:Cloud Chou. 欢迎转载,请注明出处和本文链接 本系列博客将详细阐述Activity的启动流程,这些博客基于Cm 10.1源码研究. 在介绍Activity的详细启动流程之前,先为大家介绍Activity启动时涉及到的类,这样大家可以有大概的了解,不至于在细节中迷失. 深入理解Activity启动流程(一)--Activity启动的概要流程 深入理解Activity启动流程(三)--Activity启动的详细流程1 深入理解Activity启动流程(三)--Activity

深入理解Activity启动模式

今天看到这个,觉得还不错,于是乎收藏下 作者原创连接    共分3篇: 深入理解Activity启动模式(一)–Activity与进程,线程的关系 深入理解Activity启动模式(二)–Activity,回退栈,Task之间的关系 深入理解Activity启动模式(三)–Activity启动模式特点 概述 Android官网介绍Activity的启动模式时比较含糊,介绍Application,Activity,Task,Process,Thread等概念以及它们之间的关系时,也没有说得清楚.大

Android 图文教学让你彻底理解activity启动模式

我们首先从最简单的开始, standard 这个模式就是默认的模式,我们都知道 当你用这个模式时,每次发送一个intent,都会生成一个新的实例! 我写一个简单的例子: 1 <?xml version="1.0" encoding="utf-8"?> 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 3 package="com

Android 源码系列之&lt;九&gt;从源码的角度深入理解Activity的launchModel特性

转载请注明出处:http://blog.csdn.net/llew2011/article/details/52509515 随着公司新业务的起步由于原有APP_A的包已经很大了,所以上边要求另外开发一款APP_B,要求是APP_A和APP_B账号通用且两个APP可以相互打开.账号通用也就是说在APP_A上登录了那么打开APP_B也就默认是登录状态,这个实现也不复杂就不介绍了:APP相互打开本来也不是难事,但是在测试的过程中发现了一个之前没有遇到的问题,现象如下图的demo所示: 运行现象是在A