Android应用程序的生命周期.doc

Android应用程序的生命周期

描述:程序的生命周期是在Android系统中进程从启动到终止的所有阶段,也就是Android从启动到停止的全过程。==程序的生命周期是由Android系统进行调度和控制的。

①?程序生命周期

a) Android进程的优先级。

==》

可见进程?==》服务进程==》

后台进程==》空进程

说明:

㈠前台进程:

Android系统中最重要的进程,是与用户正在进行交互的进程。有以下四种情况。·Activity正在与用户进行交互·进程被Activity调用,而且这个进程正在与用户进行交互·进程服务正在执行声明中的回调函数,如OnCreate()OnStart()OnDestroy()·进程的BroadCastReceiver在执行OnReceive()函数

Android系统在多个前台进程同时运行时,可能会出现资源部足的情况,此时会清除部分前台进程,保证主要的用户界面能够及时响应。

㈡可见进程

如果一个进程包含服务,且这个服务正被用户可见的Activity调用,此进程同样被视为可见进程。

Androdi进程一般存在少量的可见进程,只有在特殊情况下,Android系统才会为保证前台进程的资源而清除可见进程。

㈢服务进程

Android系统除非不能保证前台进程和可见进程所必要的资源,否则不强行清

除服务进程。

㈣后台进程

Android系统中一般存在数量较多的后台进程,在系统资源紧张时,系统将优先清除用户较长时间没有见到的后台进程

㈤空进程

空进程在系统紧张时会被首先清除。但为了提高Android应用程序的启动速

度,Android系统会将空进程保存在系统内存用,在用户重新启动该程序时,空进程会被重新使用。

除了以上优先级以外,一下两个方面也决定了优先级。·进程的优先级取决于所有组件中优先级最高的部分·进程的优先级会根据其他进程的依赖关系而变化。

② Android组件

b) Android系统四个组件:Activity,Service,BroadCastReceiver, ContentProvider

③Activity和生命周期

Activity生命周期

㈠Activity生命周期是指Activity从启动到销毁的过程

㈡Activity表现为四种状态。

·活动状态:Activity在用户界面中处于最上层,完全能被用户看到,能够与用户进行交互

·暂停状态:Activity界面上被部分遮挡,该Activity不再处于用户界面的最上层,且不能够与用户进行交互

·停止状态:Activity在界面上完全不能被用户看到,也就是说这个Activity被其他Activity全部遮挡

·非活动状态:不在这三种状态中的Activity则处于非活动状态。

b)?四种状态变换关系

c) Activity栈

先进先出规则

?

d)?事件回调函数

e)Activity状态保存/恢复的事件回调函数

?

f)事件回调函数的调用顺序

g)Activity生命周期图和解释。

许多生命周期的分析都是纸上谈兵,没有经过实际项目的验证,光看些官方文档时不够的,对其的理解也是也不全面不深刻的。

activity是单独的,用于处理用户操作。几乎所有的activity都要和用户打交道,所以activity类创建了一个窗口,开发人员可以通过setContentView(View)接口把UI放到activity创建的窗口上,当 activity指向全屏窗口时,也可以用其他方式实现:作为漂浮窗口(通过windowIsFloating的主题集合),或者嵌入到其他的 activity(使用ActivityGroup)。大部分的Activity子类都需要实现以下两个接口:

onCreate(Bundle)接口是初始化activity的地方. 在这儿通常可以调用setContentView(int)设置在资源文件中定义的UI, 使用findViewById(int) 可以获得UI中定义的窗口.onPause()接口是使用者准备离开activity的地方,在这儿,任何的修改都应该被提交(通常用于ContentProvider保存数据).为了能够使用Context.startActivity(),所有的activity类都必须在AndroidManifest.xml文件中定义有相关的“activity”项。

activity类是Android 应用生命周期的重要部分。

Activity生命周期

在系统中的Activity被一个Activity栈所管理。当一个新的Activity启动时,将被放置到栈顶,成为运行中的Activity,前一个Activity保留在栈中,不再放到前台,直到新的Activity退出为止。

Activity有四种本质区别的状态:

android应用程序的生命周期,Android应用程序的生命周期.doc相关推荐

  1. android中应用程序生命周期,Android应用程序生命周期中的活动和图标

    面向大众的移动技术,第3部分 为您的Android移动应用程序添加导航样式 安德鲁·格洛弗 2013年7月25日发布 面向大众的移动技术 请期待本系列的后续内容. 请期待本系列的后续内容. 近年来,移 ...

  2. android自定义view生命周期,android基础之自定义view

    一.Custom View 1.view的继承关系 view继承关系.png 2.Android 如何绘制试图层次 当activity获取焦点时,它必须提供layout层次的根节点,然后android ...

  3. Activity生命周期Android,横屏切换不重新创建Activity, Activity的四种launchMode

    Activity生命周期 1.启动Activity:系统会先调用onCreate方法,然后调用onStart方法,最后调用onResume,Activity进入运行状态. 2.当前Activity被其 ...

  4. Android零基础入门第86节:探究Fragment生命周期

    2019独角兽企业重金招聘Python工程师标准>>> 一个Activity可以同时组合多个Fragment,一个Fragment也可被多个Activity 复用.Fragment可 ...

  5. 【Android 四大组件之Activity】一文吃透Activity 生命周期

    作者:半身风雪 简介:在Android组件中最基本也是最为常见的四大组件: Activity Service服务 Content Provider内容提供者 BroadcastReceiver广播接收 ...

  6. Android开发艺术探索笔记(一) Activity的生命周期和启动模式(1)

    Activity作为Android开发中最常用的一个组件,是Android开发人员必须熟悉且掌握的重要内容.同时Activity也是在面试中经常被问到的一个方向.因此,掌握Activity的重要性也不 ...

  7. Android开发笔记(四十二)Broadcast的生命周期

    Broadcast是什么 广播的特性 广播(Broadcast)用于Android组件之间的灵活通信,它与Activity和Service的区别在于: 1.Activity和Service都只能一对一 ...

  8. android viewpager fragment 生命周期,ViewPager中Fragment的生命周期

    网上有很多Fragment生命周期的帖子,但是看了一下,没有找到自己想了解的东西,于是决定自己动手体验一下这个生命周期.主要想了解以下几个问题: Activity中的Fragment的生命周期 Vie ...

  9. android 如何获取离开屏幕时间,android – SurfaceHolder回调如何与Activity生命周期相关?...

    编辑:如果targetSDK大于10,将应用程序睡眠调用onPause和onStop. Source 我在我的姜饼手机上的一个小相机应用程序中查看了活动和SurfaceView的生命周期.你是完全正确 ...

最新文章

  1. 做了5年Java,java读写锁使用
  2. Hadoop的调度器总结
  3. 设计模式——开发常用的设计模式梳理
  4. Java基础——volatile关键字解析
  5. 泰山医学院计算机文化基础,泰医 专 计算机 16级.pdf
  6. 什么是Nacos?Nacos注册配置中心介绍
  7. 马斯克:特斯拉智能召唤功能已被使用超过55万次
  8. Unity3D中自带事件函数的执行顺序
  9. 商业智能BI系统对企业有什么好处
  10. linux exec 脚本之家,详解Shell脚本中调用另一个Shell脚本的三种方式
  11. 翻译连载 | 附录 C:函数式编程函数库-《JavaScript轻量级函数式编程》 |《你不知道的JS》姊妹篇...
  12. 操作系统Clock算法
  13. vs报错:8007000E 内存资源不足,无法完成此操作
  14. Invalid HTTP method: PATCH executing PATCH
  15. Java——Shape类
  16. JAVA的学习心路历程之JDK基础入门(上)
  17. 现在想心平气和地过完一天,真的太难了!
  18. 核高基2011申报指南或3月出台
  19. “大力丸”是壮阳药吗?
  20. 无法解析的外部符号 EVP_EncryptFinal_ex

热门文章

  1. phpcms attachment.class.php路径,解决phpcms上传不了图片的方法
  2. 使用gpio输出驱动蜂鸣器出现破音_探索者 STM32F407 开发板资料连载第七章 蜂鸣器实验...
  3. stm32单片机屏幕一直闪_用STM32做一个微型掌上示波器项目——终于鼓起在大牛前献丑的无比勇气...
  4. Angular.js学习-入门
  5. 利用vi编辑器创建和编辑正文文件(二)
  6. 利用模板引擎配合ajax进行数据的导入
  7. 【2】最简单的Laravel5.1程序分析
  8. Android 自定义ImageView加载图片
  9. Android基础 获取屏幕的宽与高
  10. Android-获取系统的应用程序的信息