Service总结

来源:互联网 发布:北师珠网络 编辑:程序博客网 时间:2024/05/29 05:07


1.service的类型

1) startService: startService类型的service是调用者(如activity)通过startService()方法启动。service启动完成后与调用者将无关,调用者销毁后service依然存在。

2)bindService:  bindService类型的service是调用者调用bindService(方法启动。service启动后允许程序与service进行交互,并且调用者销毁服务也将销毁。


2.生命周期

1)startService: onCreate()- >onStartCommand()->Service Running->onDestroy()

  2)bindService:onCreate()->onBind()->Service Running->onUnbind()->onDestroy()


3.service的实现

  1)startService: 

startService可以继承两个类来实现service:

(1)Service(包android.app.Service):实现onCreate()、onStartCommand()、onDestory()方法。

(2)IntentService(包android.app.Servie): 实现没有参数的构造方法和onHandleIntent()方法。

  2)bindService:实现onBind()onUnbind()onRebind()方法

其中,onBind返回一个IBinder实例给调用者,以便调用者通过IBinder获得service实例以操作service。

此外,在调用者中还要建立一个ServiceConnection实例对象(此实例将提供给bindService方法做参数),建立ServiceConnection需重新其中的onServiceConnection()方法(连接成功时)和onServiceDisConnection()(连接失败时),需在onServiceConnection中获得service实例。

0 0
原创粉丝点击