您的位置:首页 > 移动开发 > Android开发

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

2016-11-14 16:15 399 查看


前言

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的生命周期进行了全面解析

如果你还想了解关于Service的其他知识,请浏览以下文章:

Android四大组件:Service史上最全面解析

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

Android:(本地、可通信的、前台、远程)Service使用全面介绍

Android:远程服务Service(含AIDL & IPC讲解)

Android多线程全面解析:IntentService用法&源码

接下来会介绍继续介绍Android开发中的相关知识,有兴趣可以继续关注Carson_Ho的安卓开发笔记

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

相关文章阅读

Android开发:最全面、最易懂的Android屏幕适配解决方案

Android开发:Handler异步通信机制全面解析(包含Looper、Message Queue)

Android开发:最全面、最易懂的Webview详解

Android开发:JSON简介及最全面解析方法!

Android开发:顶部Tab导航栏实现(TabLayout+ViewPager+Fragment)

Android开发:底部Tab菜单栏实现(FragmentTabHost+ViewPager)

欢迎关注Carson_Ho的简书!

不定期分享关于安卓开发的干货,追求短、平、快,但却不缺深度

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: