(一)Service的生命周期和两种启动方式

Service

一、概念

Service,也是Android四大组件之一。对照Activity的概念,Service属于后台运行的进程,并不需要界面,可以在后台长期运行,适合做比如播放音乐,下载等任务。

二、生命周期和启动模式

2.1生命周期

由于生命周期并不多,而且跟activity的类似,这里和启动模式一起说

(1)onCreate,onDestroy与activity的概念一样,不赘述了
(2)onStartCommand,调用startService会回调这个生命周期,如果start同一个service多次,onCreate方法只会调用一次,而onStatrCommand会执行多次,只要调用了一次onDestroy,service的生命周期就结束了
(3)onBind,调用onBind方法时,会回调该方法,同样的,如果bind同一个service多次,onCreate方法也是只调用一次,而onBind方法会调用多次,只要调用了一次onUnBind,就会让绑定者与service解绑,当service上一个绑定者都没有的时候,自己就会destroy。
介绍生命周期的同时,其实就把两种调用方式已经顺便说了。

2.2调用方式

(1)start:比如从activity中start了一个service,那么activity与service是没什么关系的,即使activity退出了,service仍然可以运行,直到用户结束或者service自己destroy。
(2)bind:如果从activity中bind了一个service,那么activity与service就建立了一种关系,如果activity退出了,并且这个service没有其他的bindClient了,那么这时候,service就会自己结束。

比如音乐播放这种需求,当用户点击home退出了activity,我们仍然希望可以播放音乐,并且让我们可以控制暂停,下一首等操作,如何实现呢?请看下一篇   混合调用与AIDL使用
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值