Service这个项目中曾经用到过,一般正常情况下都是用的时候百度,so记录一下,这东西没有UI界面,看不到主要是进行后台操作。启动方式有两种
服务的启动方式:
1、startService
启动Service
有自己的生命周期,不受限于别人
Service的生命周期:onCreate() --> onStartCommand() -> onDestroy()
2、bindService
绑定Service
生命周期会受到对应绑定对象的影响
Service的生命周期 onCreate() --> onBind() --> onUnBind() --> onDestroy()
服务的分类:
1、粘性服务 START_STICKY
当Service被异常杀死后,会保留当前的开始状态,系统会尝试进行重新启动(onStartCommand)
但是不会保存对应的Intent,此时Intent为null
2、非粘性服务 START_NOT_STICKY
当被异常杀死后,就死了
3、带Intent的粘性服务 START_REDELIVER_INTENT
当Service被异常杀死后,会保留当前的开始状态,系统会尝试进行重新启动(onStartCommand)
服务我们可以用来做一些事情,比如说播放音乐,我们可以放到服务中,录音等都可以放到服务中