前言
- Service作为Android四大组件之一,应用非常广泛
- 本文将介绍Service最基础的知识:Service的生命周期
如果你对Service还未了解,建议先阅读我写的文章:
Android四大组件:Service史上最全面解析
目录
1. 生命周期常用方法
在Service的生命周期里,常用的有:
- 4个手动调用的方法
手动调用方法 | 作用 |
startService() | 启动服务 |
stopService() | 关闭服务 |
bindService() | 绑定服务 |
unbindService() | 解绑服务 |
- 5个内部自动调用的方法
内部自动调用的方法 | 作用 |
onCreat() | 创建服务 |
onStartCommand() | 开始服务 |
onDestroy() | 销毁服务 |
onBind() | 绑定服务 |
onUnbind() | 解绑服务 |
2. 生命周期方法具体介绍
主要介绍内部调用方法和外部调用方法的关系。
2.1 startService()
- 作用:启动Service服务
- 手动调用startService()后,自动调用内部方法:onCreate()、onStartCommand()
- 调用逻辑如下:
2.2 stopService()
- 作用:关闭Service服务
- 手动调用stopService()后,自动调用内部方法:onDestory()
- 调用的逻辑:
2.3 bindService()
- 作用:绑定Service服务
- 手动调用bindService()后,自动调用内部方法:onCreate()、onBind()
- 调用的逻辑:
2.4 unbindService()
- 作用:解绑Service服务
- 手动调用unbindService()后,自动调用内部方法:onCreate()、onBind()、onDestory()
- 调用的逻辑:
3. 常见的生命周期使用
3.1 只使用startService启动服务的生命周期
3.2 只使用BindService绑定服务的生命周期
3.3 同时使用startService()启动服务、BindService()绑定服务的生命周期
3.4 特别注意
- startService()和stopService()只能开启和关闭Service,无法操作Service;
- startService开启的Service,调用者退出后Service仍然存在;
BindService开启的Service,调用者退出后,Service随着调用者销毁。
bindService()和unbindService()可以操作Service
4. 总结
- 本文对Service的生命周期进行了全面解析
如果你还想了解关于Service的其他知识,请浏览以下文章:
Android四大组件:Service史上最全面解析
Android:Service生命周期最全面解析
Android:(本地、可通信的、前台、远程)Service使用全面介绍
Android:远程服务Service(含AIDL & IPC讲解)
Android多线程全面解析:IntentService用法&源码接下来会介绍继续介绍Android开发中的相关知识,有兴趣可以继续关注Carson_Ho的安卓开发笔记
请点赞!因为你们的赞同/鼓励是我写作的最大动力!