首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
30 篇文章
1
android横竖屏切换activity生命周期变化
2
Android:Service生命周期最全面解析
3
Android 面试官:简述一下 View 的绘制流程,这个都答不出来就别想拿Offer了
4
一文解决Android View滑动冲突
5
Android Handler机制11之Handler机制总结
6
android View层的绘制流程
7
深入理解 Android 消息机制原理
8
Android 7.0 中 Launcher 启动 Activity 过程
9
「细品源码」 Android 系统的血液:Handler
10
Android ListView 与 RecyclerView 对比浅析:缓存机制
11
深入理解Android插件化技术
12
Android组件化框架项目详解
13
《Android插件化技术——原理篇》
14
Android面试遇坎,我精选了这些题目与答案,你离大厂还有多远测试一下就知道!
15
史上最全的Android面试题集锦
16
Activity三问—猫眼真题
17
Android 面试黑洞——当我按下 Home 键再切回来,会发生什么?
18
笔记——JVM、DVM(dalvik)和ART之间的区别(二十)
19
ClassLoader解析(二):Android中的ClassLoader
20
Android类加载之PathClassLoader和DexClassLoader
21
用代码手把手教你使用MVVM
22
从构建工具看 Android APK 编译打包流程
23
《Android面试题思考与解答》2021年3月刊
24
《Android面试题思考与解答》2021年1月刊
25
Android MVVM模式入门
26
ViewModel三问—阿里真题
27
ANR 原理与实战技巧
28
你真的会用Retrofit2吗?Retrofit2完全教程
29
Android 进阶11:进程通信之 ContentProvider 内容提供者
30
Android:关于ContentProvider的知识都在这里了!

Android:Service生命周期最全面解析


前言

  • 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; bindService()和unbindService()可以操作Service
  • startService开启的Service,调用者退出后Service仍然存在; BindService开启的Service,调用者退出后,Service随着调用者销毁。

4. 总结

  • 本文对Service的生命周期进行了全面解析
  • 接下来会介绍继续介绍Android开发中的相关知识,有兴趣可以继续关注Carson_Ho的安卓开发笔记

请点赞!因为你们的赞同/鼓励是我写作的最大动力!

下一篇
举报
领券