安卓service 基础
来源:互联网 发布:2016淘宝女装店铺推荐 编辑:程序博客网 时间:2024/05/24 22:43
一、Service概述及用途
概述:服务是运行在后台的一段代码。不是进程也不是线程。 可以运行在它自己的进程,也可以运行在其他应用程序的上下文(Context)里面,这取决于自身的需要。Android中的服务,与Activity不同,他不能与用户交互,不能自己启动,运行在后台的程序里。
用途:媒体播放器的服务,当用户退出媒体选择用户界面时,仍然希望音乐可以继续播放,这就是由服务(Service)来保证当用户界面关闭时音乐继续播放。比如当我们一个应用数据是通过网络获取的,不同时间的数据是不同的,这时候我们可以用Service在后台定时更新,而不是每次打开应用时再去获取。
二、Service生命周期
❶onCreate():在服务被创建时调用,该方法只会被调用一次,无论调用多少次startService()或bindService()方法,服务也只会被创建一次。
❷onStrat():只有采用Context.startService()方法启动服务时才会回调该方法。该方法在服务开始运行时被调用。多次调用startService()方法尽管不会多次创建服务,但onStart()方法会被多次调用。
❸onDestory():服务被终止时调用。
❹onBind():只有采用Context.bindService()方法启动服务时才会回调该方。该方法在调用者与服务绑定时被调用,当调用者与服务已经多次绑定,多次调用Context.bindService()方法并不会导致该方法被多次调用。
❺onUnbind():只有采用Context.bindService()方法启动服务时才会回调该方法。该与服务解除绑定时被调用。
startService后,即使调用startService的进程结束了Service仍然还存在,直到有进程调用stopService,或者Service自己自杀(stopSelf());
bindService后,Service就和调用bindService的进程同生共死了,也就是说当调用bindService的进程死了,那么它bind的service也要跟着被结束,当然期间也可以调用unbindService让Service结束。
两种方式混合使用时,比如说你startService了,我bindService了,那么只有你stopService了而且我也unbindservice了,这个Service才会被结束。
- 安卓service 基础
- 安卓基础:服务Service
- 安卓基础学习_ Service
- 安卓基础总结 Service相关
- 0909Android基础安卓四大组件之Service
- 安卓 Service组件
- 关于安卓service
- 安卓Service服务
- 安卓016Service
- 安卓service
- 安卓 service
- 安卓Service
- 安卓组件之Service
- 安卓开发-Service使用
- 安卓开发-Application && service
- 背景音乐(安卓Service)
- 安卓服务Service详解
- 3.安卓service详解
- 更新文档命令
- const有什么用途?
- poj1046 枚举
- 手把手教你XIB拖商城类应用的待发货列表
- 删除文档命令
- 安卓service 基础
- 查询文档命令
- Kesci“魔镜杯”风控算法大赛复赛解决方案
- Setting
- MySQL压缩表
- 分页.排序.索引命令
- 程序员如何做到年薪 50 万?
- 奇数偶数序列
- 聚合命令