必威电竞|足球世界杯竞猜平台

Service
來源:互聯網

Service是Android系統中的四大組件之一,它是一種長生命周期的,沒有可視化界面,運行于后臺的一種服務程序。

啟動方式

A started service

被開啟的service通過其他組件調用startService()被創建。這種service可以無限地運行下去,必須調用stopSelf()方法或者其他組件調用stopService()方法來停止它。

當service被停止時,系統會銷毀它。

A bound service

被綁定的service是當其他組件(一個客戶)調用bindService()來創建的。

客戶可以通過一個IBinder接口和service進行通信。

客戶可以通過unbindService()方法來關閉這種連接。

一個service可以同時和多個客戶綁定,當多個客戶都解除綁定之后,系統會銷毀service。

The entire lifetime

service整體的生命時間是從onCreate()被調用開始,到onDestroy()方法返回為止。

和activity一樣,service在onCreate()中進行它的初始化工作,在onDestroy()中釋放殘留的資源。

比如,一個音樂播放service可以在onCreate()中創建播放音樂的線程,在onDestory()中停止這個線程。

onCreate()和onDestroy()會被所有的service調用,不論service是通過startService()還是bindService()建立。

The active lifetime

service積極活動的生命時間(active lifetime)是從onStartCommand()或onBind()被調用開始,它們各自處理由startService()或bindService()方法傳過來的Intent對象。

如果service是被開啟的,那么它的活動生命周期和整個生命周期一同結束。

如果service是被綁定的,它們它的活動生命周期是在onUnbind()方法返回后結束。

參考資料 >

生活家百科家居網