Android四大组件之一的Service使用

今天写程序用到了Service,所以来回忆一下Service的使用方式

Service是Android中的四大组件之一,其他三种分别为Activity(活动),BroadcastReceive(广播接受者),ContantProvide(内容提供者)。Service与Activity比较相似.

实现Service需要继承在Android.app包中的Service



想要使用的话,需要在AndroidManifest.xml中进行注册



需要实现一个abstract的方法, onBind();



如果不是通过 bindService ()方法启动的Service可以不用理会

Service的生命周期有两种
第一种通过startService来启动的Service


这种启动方式Service不会自动销毁,一直运行在后台。
如果想要销毁,可以通过stopService来停止,或者在Service中调用 stopSlef()方法来销毁
第二种通过 bindService ()来启动的Service

这种启动方式Service在进行 unbindService ()之后就进行销毁了,

在bindService方法中有三个参数
Intent service, ServiceConnection conn ,int flags
第一个参数:是一个 Intent对象


第二个参数:是一个Service连接参数,可以在 onServiceConnected方法中对IBinder对象进行强制转换,得到当前的Service对象,然后即可操作Service里面的参数,或者方法。Activity即可与Service之间进行交互


第三个参数:指定绑定时是否自动创建Service(如果Service还未创建)。
该参数可指定0(不自动创建)或BIND_AUTO_CREATE(自动创建)

一个完整的bindSerivce:


bindService与之对应的有UnBindService,这个方法作用为:使Service从Activity中进行解绑,如果Service是只通过BindSerivce进行创建的话,当进行UnBindService时,Service会执行onDestry方法进行销毁

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值