android學習4:Service

Service

啓動方式:

startService:啓動一個服務在後臺執行任務,用stopService停止

bindService:啓動服務可進行通信,用unbindService停止

startService同時bindService:停止服務時需同時使用stopService與unbindService

分類:

本地服務(Loca):依附於主進程,主進程終止則服務終止

遠程服務(Remote):是獨立的進程,不受其他進程的影響

生命週期:

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

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

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

startService:

startService方法啓動的服務,都在後臺運行,不受bindService影響,如果用startService多次啓動,onCreate方法只會執行一次,onStartCommand方法會多次啓動,系統只 創建一個Service實例,在stopService調用或被系統結束之前,該Service會一直在後臺運行,不受對應程序的Activity影響

binService:

bindService啓動服務,同樣onCreate方法執行一次,且不執行onStartCommand方法用unbindService或退出之前調用bindService的Context實例,系統將會停止Service

同時startService、bindService:如下圖

發佈了25 篇原創文章 · 獲贊 1 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章