栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

安卓之生命周期

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

安卓之生命周期

一、 Activity的生命周期

1、 onCreate(): 当活动首次创建时调用,用于初始化操作。
2、 onReStart(): 当活动停止后重新启动该活动时调用。
3、 onStart(): 当活动被展示给用户时调用,调用之后活动处于可见状态。
4、 onResume(): 当活动将开始与用户进行交互时调用,调用之后活动处于可交互状态。
5、 onPause(): 当活动被部分覆盖时调用,调用之后活动处于不可交互状态。
6、 onStop(): 当活动被完全覆盖时调用,调用之后活动处于不可见状态。
7、 onDestroy(): 当活动被销毁时调用,用于资源的回收和关闭。

二、 不同场景下Activity的调用流程

1、 当从活动A点击进入活动B时:
onPause(A)->onCreate(B)->onStart(B)->onResume(B)->onStop(A)
2、 当活动B退出回到活动A时:
onPause(B)->onRestart(A)->onStart(A)->onResume(A)->onStop(B)
->onDestroy(B)
3、 当从活动A点击进入透明活动B时:
onPause(A)->onCreate(B)->onStart(B)->onResume(B)
4、 当透明活动B退出回到活动A时:
onPause(B)->onResume(A)->onStop(B)->onDestroy(B)
5、 不设置android:configChanges切横屏时:
onPause()->onStop()->onDestroy()->onCreate()->onStart()->onResume()
6、 不设置android:configChanges切竖屏时:
onPause()->onStop()->onDestroy()->onCreate()->onStart()->onResume()
->onPause()->onStop()->onDestroy()->onCreate()->onStart()->onResume()
7、 设置android:configChanges=“orientation”切横屏或竖屏时:
onPause()->onStop()->onDestroy()->onCreate()->onStart()->onResume()
8、 设置android:configChanges="orientation|keyboardHidden"切横屏或竖屏时(API>12时需加入screenSize):
onConfigurationChanged()

三、 Service的生命周期

1、 onCreate(): 当服务首次创建时调用,用于初始化操作。
2、 onStartCommond(): 当另一个组件通过startService启动服务时调用。
3、 onBind(): 当另一个组件通过bindService绑定服务时调用。
4、 onUnBind(): 当另一个组件通过unbindService解绑服务时调用。
8、 onDestroy(): 当服务被销毁时调用,用于资源的回收和关闭。

四、 不同场景下Service的调用流程

1、 第一次调用startService启动服务:
onCreate()->onStartCommond()
2、 再次调用startService启动服务:
onStartCommond()
3、 调用bindService绑定服务:
onCreate()->onBind()
4、 同一个组件多次绑定服务不会重复调用onBind(),会返回绑定的同一个服务。
5、 调用unBindService解除绑定:
onUnBind()
6、解除所有绑定并且使用startService 启动的服务调用了stopService或自身调用了stopSelf,服务才会停止。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/677989.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号