- 浏览: 417487 次
-
文章分类
- 全部博客 (327)
- Android (114)
- Java (13)
- Java基础 (14)
- Glib (2)
- linux (15)
- extjs (5)
- eclipse (2)
- Asterisk (56)
- MYSQL (6)
- 数据库 (9)
- PHP (7)
- C# (18)
- 杂谈~~ (1)
- web开发前端 (3)
- 网络编程 (2)
- Opensips (2)
- voip (3)
- debian (7)
- openfire (15)
- wordpress (1)
- 版本控制 (1)
- Android 线程服务广播 (1)
- SRTP (2)
- 单片机及ARM等 (3)
- 基础知识 (5)
- asp.net (2)
- 单片机 (1)
- 设计模式及架构 (1)
- 安全 (1)
- Cubieboard 草莓树莓各类派 Android开发板 (1)
- J2EE (2)
- BootStrap (3)
- BootStrap web前端开发 (1)
- web前端开发 (4)
- object-c (1)
- openwrt (8)
- 智能家居 (4)
- Node.js (4)
最新评论
-
xiaoxiecomeon:
你这个程序一存在线程的时间片相互抢占的问题,运行时间长了很可能 ...
Runnable 和 Thread -
dotjar:
我觉得话应该这么说:引用TestThread tt = new ...
Runnable 和 Thread -
dagf113225:
调用TelephonyManager的隐藏API是先参考Fra ...
Android提高第十四篇之探秘TelephonyManager
应用程序组件有一个生命周期——一开始Android实例化他们响应意图,直到结束实例被销毁。在这期间,他们有时候处于激活状态,有时候处于非激活状态;对于活动,对用户有时候可见,有时候不可见。组件生命周期将讨论活动、服务、广播接收者的生命周期——包括在生命周期中他们可能的状态、通知状态改变的方法、及这些状态的组件寄宿的进程被终结和实例被销毁的可能性。 本文主要讨论活动的生命周期及他们可能的状态、通知状态改变的方法。分为以下三部分: 一个活动有三个基本状态: 如果一个活动被暂停或停止,系统可以将它从内存移除,通过要求它结束(通过调用它的finish()方法),或简单地杀掉它的进程。当它再次显示给用户时,必须要完全重新启动和恢复到之前的状态。随着活动从一个状态转为另一个状态,通过调用下面的受保护的方法通知该改变: 所有这些方法都是钩子,你可以重写当状态改变时做适当的工作。所有的活动必须要实现onCreate()去做一些初始化的设置,当对象第一次实例化的时候。很多活动也会实现onPause()去提交数据修改或准备停止与用户交互。 将他们合并在一起,这七个方法定义了活动的整个生命周期。有三个嵌套的循环,你可以通过这七个方法监视: 下面这个图解释了这三个循环和状态之间状态的可能路径。着色的椭圆表示活动的主要状态,矩形表示当活动在状态之间转换时你可以执行的回调方法。 图1、活动生命周期(来源:Android SDK) 下面的表格对每个方法更详细的描述和在活动的整个生命周期中的定位。 注意上面表格的Killable列,它表示当方法返回时没有执行活动的其它代码,系统是否能杀死活动寄宿的进程。三个方法(onPause()、onStop()、onDestroy())标记为Yes。因为onPause()是唯一一个保证在进程被杀之前会调用的,因此你应该使用onPause()来写任何持久化存储数据。 被标记为No的方法保护活动寄宿的进程在他们调用的时候不会被杀掉。因此活动是可杀掉状态,例如onPause()返回到onResume()调用期间。直到onPause()再次返回,活动是不可杀掉的。其实,没有标记为Killable的活动也是可以系统被杀掉的,不过这仅仅发生在极端困难的情况下,没有有任何其他资源可用。 当系统而不是用户关闭一个活动来节省内存时,用户可能希望返回到活动且是它之前的状态。为了获得活动被杀之前的状态,你可以执行活动的onSaveInstanceState()方法。Android在活动容易被销毁前调用这个方法,也就是调用onPause()之前。该方法的参数是一个Bundle对象,在这个对象你可以以名值对记录活动的动态状态。当活动再次启动时,Bundle同时被传递到onCreate()和调用onCreate()之后的方法,onRestoreInstanceState(),因此使用一个或两个可以重新创建捕获的状态。 因为onSaveInstanceState()方法不总是被调用,你应该仅使用onSaveInstanceState()它来记录活动的临时状态,而不是持久的数据。应该使用onPause()来存储持久数据。 当一个活动启动另一个活动,他们都经历生命周期转换。一个暂停或许是停止,然而另一个启动。有时,你可能需要协调这些活动。生命周期的回调顺序是明确界定的,特别是当这两个活动在同一个进程中: 修正:第一节——活动生命周期中的表格第一、二行中的第二列(description)中的onRestart()应该为onStart()。 后续文章地址: http://www.cnblogs.com/skynet/archive/2010/05/05/1727645.html
1、活动生命周期
2、保存活动状态
3、协调活动
发表评论
-
直接拿来用!最火的Android开源项目整理
2015-09-16 10:13 610一、代码库 1、from 代码家 整理比较好的源 ... -
探讨android更新UI的几种方法
2014-06-09 23:27 621今天讲的内容非常简单,只是讲讲有关于android界面更新的 ... -
Android 滑动切换页面 以及屏幕手势
2014-05-08 17:49 532手机进入智能机时代,触摸屏也已成为主流之势,原来的手机按键也 ... -
android 用Achartengine 作图
2014-05-08 16:55 773Achartengine 是google的一 ... -
Android中使用Animation实现控件的动画效果以及Interpolator和AnimationListener的使用
2014-05-08 16:28 776Animation的4个基本动画效果 What is An ... -
java.lang.ClassNotFoundException: Didn't find class "android.support.v4.view.Vie
2014-05-06 14:43 2941Android错误:Caused by: java.lang ... -
Android Socket通信如何设置超时时间
2014-05-06 14:14 1101其实关于这个问题可能用到的人不会很多,不过我在这里还是说说。 ... -
【转】Android本地语音识别引擎PocketSphinx-语言建模
2014-02-13 10:35 1852Android本地语音识别引擎PocketSphinx- ... -
关于build.prop原始Dalvik虚拟机设定与调整
2013-09-05 10:40 1263原厂S3 台版 1GB Ramsystem/build.pro ... -
Android中Service与IntentService的使用比较
2013-09-04 15:24 1219该博客来自网络——— ... -
android 应用程序Activity之间数据传递与共享的几种途径
2013-08-01 17:24 9121.基于消息的通信机制 Intent ---boud ... -
android数据通信方式
2013-08-01 17:15 918http://www.itkee.com/develope ... -
“android.intent.category.DEFAULT”的目的是什么?
2013-07-31 16:43 5481、要弄清楚这个问题,首先需要弄明白什么是implicit( ... -
集成拨号盘,2句话的事情
2013-07-30 15:45 610<intent-filter> < ... -
Android TabHost动态加载内容总结
2013-07-25 17:49 966前面用继承TabActivity的方法很好的完成了,TabHo ... -
[Android实例] android json
2013-07-17 15:20 670import java.io.ByteArrayOutput ... -
android json解析及简单例子
2013-07-17 15:19 943JSON的定义: 一种轻量级的数据交换 ... -
AsyncTask的用法-UI刷新发放
2013-07-15 14:50 674在开发Android应用时必须遵守单线程模型的原则: A ... -
java.lang.OutOfMemoryError处理错误
2013-07-15 14:41 684java.lang.OutOfMemoryError异常解决 ... -
关于android.view.WindowLeaked异常的解决方案
2013-07-15 10:34 627Android.view.WindowLeaked按字面了解, ...
相关推荐
Android开发之旅:组件生命周期(一) 8 Android开发之旅:组件生命周期(二) 9 Android开发之旅:组件生命周期(三) 10 Android 开发之旅:又见Hello World!11 Android 开发之旅:深入分析布局文件&又是...
`onCreate`方法是Activity生命周期中的关键方法,用于初始化活动,例如加载布局文件和设置UI元素。 2. **gen文件夹**:这个文件夹包含由Android编译系统自动生成的R.java文件。R.java是一个内部类,包含了对项目中...
`Bundle`用于在不同方法之间传递数据,例如在活动生命周期的不同阶段保存和恢复状态。 2. **gen 文件夹**:这个文件夹下的`R.java`文件是自动生成的,包含了对项目资源的引用。`R`类包含了各种资源(如布局、图片、...
#### 七、组件生命周期 **7.1 生命周期概述** - 组件的生命周期是指组件从创建到销毁的过程。 - 不同类型的组件有不同的生命周期方法。 **7.2 示例方法** - **onCreate()**: 当组件被创建时调用。 - **onStart()...
【Android 开发之旅:组件生命周期】(二) - 服务和服务生命周期 在Android应用开发中,服务(Service)是四大组件之一,它负责在后台执行长时间运行的操作而不提供用户界面。服务生命周期的理解对于优化应用程序...
根据提供的文件信息,本文将围绕“Android开发关键技术之旅:Java程序员快速学习通道”这一主题进行深入探讨,并结合Java编程背景,解析与Android开发相关的重点技术和实践路径。 ### Android开发的关键技术概览 #...
【Android 开发之旅:环境搭建】 在Android开发的初期阶段,首要任务是建立一个完整的开发环境。这包括安装Java Development Kit (JDK),Eclipse集成开发环境,Android Software Development Kit (SDK)以及Android ...
15. **Android权限模型和组件通信机制**:深入理解Android的权限模型,如四大组件(Activity、Service、BroadcastReceiver、ContentProvider)的生命周期和通信机制。 通过分析和运行这些源码,开发者不仅可以学习...
《Android平台开发之旅(第2版)光盘》是一本深度探索Android开发的书籍,针对Android 3/4系统的新特性进行了详细的解析。这本书旨在通过实际的开发案例,帮助读者理解并掌握Android平台开发的基本概念、实用技术...
在Android开发之旅(2):android架构的主题中,我们将深入探讨Android系统的架构,这是一个复杂的多层次设计,涵盖了操作系统、中间件层、应用程序框架以及各种应用程序。Android的架构是其强大功能和灵活性的基础,...
根据提供的文件信息,“Android平台开发之旅(第2版).pdf”这一资料似乎是一本关于Android应用开发的专业书籍。虽然给出的部分内容并未包含实际的知识点,但从书名和描述来看,我们可以推断出这本书可能覆盖的一些...
根据提供的标题、描述和部分上下文内容,“Android平台开发之旅(第2版)”这本书主要聚焦于Android平台的应用程序开发。虽然提供的部分内容并没有直接涉及到具体的Android开发知识点,但我们可以基于书名和主题,来...
在Android开发之旅中,我们已经探索了许多核心概念和组件,为深入学习打下了坚实的基础。首先,我们了解了Android应用程序的基本目录结构,其中包括src、gen、Android x、assets、AndroidManifest.xml以及default....
它包含了Activity Manager(负责应用生命周期管理)、Content Providers(用于数据共享)、Intent机制(用于应用间通信)以及View系统(构建用户界面)等核心组件。这一层极大地简化了应用开发,并确保了不同应用间...
【老罗的Android之旅导读PPT】是一份旨在帮助用户深入了解Android操作系统的教育资源,由知名IT人士老罗精心制作。这份PPT旨在提升大家对于Android系统底层机制、应用开发以及系统优化等方面的理解,适合Android...
在Android开发之旅中,深入理解Android系统的架构是至关重要的。本篇主要探讨Android系统架构的五个核心组成部分:Linux Kernel、Android Runtime、Libraries、Application Framework和Applications。 1. **Linux ...
在Android平台开发之旅的代码2中,我们深入探讨了Android应用程序开发的关键方面,这包括了多个章节的源码,从初级到高级的概念和技术。每个章节的文件命名(如ch12、ch13等)代表了不同的主题,下面将详细阐述这些...
《老罗的Android之旅》是一套深受Android开发者欢迎的学习资源,由知名技术讲师老罗精心制作。这个压缩包集合了该课程的多个关键主题的PPT文件,旨在为那些希望深入理解Android系统的开发者提供一站式学习材料。以下...
《老罗Android之旅》是一套全面讲解Android技术的教程,主要涵盖了Android系统的基本概念、专用驱动、安全机制以及应用程序UI架构等多个重要知识点。通过这套课程,我们可以深入理解Android开发的核心要素,提升自己...
**金典的老罗的android之旅**是一段深入探索Android世界的精彩旅程,专为对Android开发感兴趣的初学者和进阶者量身打造。这个资源集合涵盖了Android开发的关键领域,旨在通过一系列精心编排的PPT文档,帮助学习者...