Android中service的生命周期
Service作为Android四大组件
- Service
- Activity
- ContentProvider
- BroadcastReceiver
之一,应用非常广泛,和Activity一样,Service也有一系列的生命周期回调函数。
1.生命周期流程图:
- onCreate():
首次创建服务时,系统将调用此方法。如果服务已经运行,则不会调用此方法,该方法只调用一次。
- onStartCommand():
当另一个组件通过调用starService()请求启动服务时,系统将调用此方法。
- onDestroy():
当服务不在使用且将被销毁时,系统将调用此方法。
- onBind():
当另一个组件通过调用bindService()与服务绑定时,系统将调用此方法。
- onUnbind():
当另一个组件 通过调用unbindService()与服务解绑时,系统将调用此方法。
- onRebind():
当旧的组件与服务解绑后,另一个新的组件与服务绑定时,onUnbind()返回true时,系统将调用此方法。
2.生命周期方法
在Service的生命周期中,常用的方法有:
- 手动调用的方法:
手动调用的方法 | 作用 |
---|---|
startService() | 启动服务 |
stopService() | 关闭服务 |
bindService() | 绑定服务 |
unbindService() | 解绑服务 |
- 自动调用的方法
自动调用方法 | 作用 |
---|---|
onCreat() | 创建服务 |
onStartCommand() | 开始服务 |
onDestroy() | 销毁服务 |
onBind() | 绑定服务 |
onUnbind() | 解绑服务 |
3.生命周期的调用
- 启动Service服务
单次:startService()->onCreate()->onStartCommand()
多次:startService()->onCreate()->onStartCommand()->onStartCommand()
- 停止Service服务
stopService() —> onDestroy()
- 绑定Service服务
bindService() —> onCreate() —> onBind()
- 解绑Service服务
unbindService() —> onUnbind() —> onDestroy()
- 启动绑定Service服务
startService() —> onCreate() —> onStartCommand() —> bindService() —> onBind()
- 解绑停止Service服务
unbindService() —> onUnbind() —> stopService() —> onDestroy()
- 解绑绑定Service服务
unbindService() —> onUnbind(ture) —> bindService() —> onRebind()
参考资料
Android中service的生命周期相关推荐
- android 英语论文,Android中Activity的生命周期英语论文+译文.doc
Android中Activity的生命周期英语论文译文 北方民族大学 英文文献翻译 论文题目: Android环境及Activity介绍 院(部)名 称: 计算机科学与工程学院 学 生 姓 名: 陈 ...
- 18_Android中Service的生命周期,远程服务,绑定远程服务,aidl服务调用,综合服务案例,编写一个应用程序调用远程支付宝远程服务场景
============================================================================ 服务的生命周期: 一.采用start的方式开始 ...
- android中应用程序生命周期,Android应用程序生命周期中的活动和图标
面向大众的移动技术,第3部分 为您的Android移动应用程序添加导航样式 安德鲁·格洛弗 2013年7月25日发布 面向大众的移动技术 请期待本系列的后续内容. 请期待本系列的后续内容. 近年来,移 ...
- 【android】android中activity的生命周期
activity生命周期: 实例代码: 1 public class DemoActivity extends Activity { 2 3 //1.activity第一次被创建的时候,执行 4 @O ...
- Android 中 Activity 的生命周期
接触 Android 有一段时间了,但是今天才去看 Activity 的生命周期,着实是因为在项目中用到了,需要去关闭释放一些数据. 以下内容来自网络,说的很直白,我就不用整理了 onCreate() ...
- Android中activity的生命周期
1.通常activity可能的三种基本状态 Resumed(运行状态) activity在屏幕的前台并且拥有用户的焦点(或者称为running状态). Paused(挂起状态) 另一个activity ...
- android 生命周期流程图,Android Studio ——Service的生命周期
原文链接:http://mobile.51cto.com/android-315622.htm 前两节中可以看到Activity和Service,context.startService对应着Serv ...
- android启动服务的生命周期,android Service启动运行服务 生命周期
Service Android中的service类似于windows中的service,service一般没有用户操作界面,它运行于系统中不容易被用户发觉, 可以使用它开发如监控之类的程序. 一.步骤 ...
- 【Android】Android Service的生命周期
Managing the Lifecycle of a Service 原文来自: http://www.cnblogs.com/mengdd/archive/2013/03/24/2979944.h ...
最新文章
- Tableau 2020.3 发布!新增 写入外部数据库 与 预测建模 等功能,进一步增强扩展分析
- Eclipse配置详解(包括智能提示设置、智能提示插件修改,修改空格自动上屏、JDK配置、各种快捷键列表……)...
- 【plupload】单易用且功能强大的上传组件
- 设计模式之Observer(观察者)模式
- oracle字段去重查询,oracle怎么去重查询
- 判断浏览器是否支持websocket的方法
- 【java】编写一个圆柱体类Cylinder,它继承于Circle类
- pycharm中配置Git教程
- 程序员教程第五版笔记
- bat脚本打开刷新网页
- 使用secureCRT运行VBScript脚本,自动执行操作教程
- 即将“再次”免费的JDK
- 怎么用html制作3D页面,html – 如何使用CSS制作图像3D
- 迅雷 linux 命令行 版本号,linux下完美运行迅雷5.8.9.662
- view的superview的变换
- 打雪仗java_【UER #8】打雪仗 - 题目 - Universal Online Judge
- 获取微信公众号历史文章列表页链接
- Tortoisegit 远端版本回退
- glibc 知:手册21:日期和时间
- 读写偏斜现象的初学者指南
热门文章
- php验证码完整功能,用PHP实现验证码功能
- 电脑管家pc版离线包_王国统治电脑版下载_王国统治游戏pc版下载[策略经营]
- jQuery实现照片墙,附步骤详解
- topcoder srm 686 div1 -3
- java----动态绑定
- spring cloud简介之最好参考
- [virtualbox] win10与centos共享目录下,nginx访问问题
- Xamarin开发Android---提示、跳转、传递数值 (学习总结)
- System Verilog自学笔记专栏概述博文目录
- php是视频还是图片格式,php 视频、音频和图片文件上传,该如何解决