Android中Service(服务)的生命周期

简介: Service作为Android的四大组件之一,与Activity一样,有着自己的生命周期

onCreate:创建服务


首次创建服务时,系统将调用此方法,该方法只调用一次


onStartCommand:开始服务


当另一个组件通过调用startService方法请求启动服务时,系统将调用此方法


onDestroy:销毁服务


当服务不再使用且将被销毁时,系统将调用此方法


onBind:绑定服务


当另一个组件通过调用bindService方法与服务绑定时,系统将调用此方法


onUnbind:解绑服务


当另一个组件通过调用unbindService方法与服务解绑时,系统将调用此方法


onRebind:


当旧的组件与服务解绑时,另一个新的组件与服务绑定,onUnbind方法返回true时,系统将调用此方法


系统自动调用的方法 手动调用的方法

onCreat() startService()

onStartCommand() stopService()

onDestroy() bindService()

onBind() unbindService()

onUnbind()

生命周期的调用

启动服务

startService()的生命周期:onCreate()——>onStartCommand()——>onStartCommand()


绑定服务

bindService()的生命周期:onCreate()——>onBind()——>onUnbind()——>onDestroy()


先启动后绑定服务

startService()后bindService()的生命周期:


onCreate()——>onStartCommand()——>onBind()——>onUnbind()——>onDestroy()


先绑定后启动服务

先bindService()后startService()的生命周期:


onCreate()——>onBind()——>onStartCommand()——>onUnbind()——>onDestroy()


先解绑后绑定服务

unbindService()——>bindService()——>onUnbind(ture)——>onRebind()


总结:


Service有着一系列的 生命周期回调函数,用来监测Service状态变化,并且在适当的时候调用适当的函数


目录
相关文章
|
19天前
|
Java API 调度
Android系统 自定义开机广播,禁止后台服务,运行手动安装应用接收开机广播
Android系统 自定义开机广播,禁止后台服务,运行手动安装应用接收开机广播
41 0
|
20天前
|
Android开发
Android 11 添加Service服务SELinux问题
Android 11 添加Service服务SELinux问题
42 1
|
4月前
|
Android开发
Android基础知识:请解释Service是什么,它与IntentService的区别是什么?
Android基础知识:请解释Service是什么,它与IntentService的区别是什么?
42 0
|
4月前
|
数据库 Android开发 开发者
Android基础知识:请解释Activity的生命周期。
Android基础知识:请解释Activity的生命周期。
47 2
|
20天前
|
Android开发
Android Service Call /dev/xxx SELinux
Android Service Call /dev/xxx SELinux
16 1
|
2天前
|
Android开发 数据库管理
Android如何在Activity和Service之间传递数据
Android如何在Activity和Service之间传递数据
10 3
|
6天前
|
Android开发
Android Service的两种使用方法
Android Service的两种使用方法
12 2
|
12天前
|
安全 网络安全 Android开发
云端防御策略:融合云服务与网络安全的未来构建高效的Android应用:从内存优化到电池寿命
【4月更文挑战第30天】 随着企业加速向云计算环境转移,数据和服务的云端托管成为常态。本文探讨了在动态且复杂的云服务场景下,如何构建和实施有效的网络安全措施来保障信息资产的安全。我们将分析云计算中存在的安全挑战,并展示通过多层次、多维度的安全框架来提升整体防护能力的方法。重点关注包括数据加密、身份认证、访问控制以及威胁检测与响应等关键技术的实践应用,旨在为读者提供一种结合最新技术进展的网络安全策略视角。 【4月更文挑战第30天】 在竞争激烈的移动市场中,Android应用的性能和资源管理已成为区分优秀与平庸的关键因素。本文深入探讨了提升Android应用效率的多个方面,包括内存优化策略、电池
|
3月前
|
数据可视化 Android开发
[Android 四大组件] --- Service
[Android 四大组件] --- Service
24 0
|
4月前
|
开发工具 Android开发
Android平台RTMP推送|轻量级RTSP服务|GB28181设备接入模块之实时快照保存JPG还是PNG?
Android平台RTMP推送|轻量级RTSP服务|GB28181设备接入模块之实时快照保存JPG还是PNG?