-
Service
(Android四大組件之一)
鎖定
- 軟件名稱
- Service
- 軟件平台
- Android系統
- 類 別
- 服務程序
Service啓動方式
ServiceA started service
被開啓的service通過其他組件調用startService()被創建。
這種service可以無限地運行下去,必須調用stopSelf()方法或者其他組件調用stopService()方法來停止它。
當service被停止時,系統會銷燬它。
ServiceA bound service
被綁定的service是當其他組件(一個客户)調用bindService()來創建的。
客户可以通過一個IBinder接口和service進行通信。
客户可以通過unbindService()方法來關閉這種連接。
一個service可以同時和多個客户綁定,當多個客户都解除綁定之後,系統會銷燬service。
ServiceThe entire lifetime
和activity一樣,service在onCreate()中進行它的初始化工作,在onDestroy()中釋放殘留的資源。
比如,一個音樂播放service可以在onCreate()中創建播放音樂的線程,在onDestory()中停止這個線程。
onCreate()和onDestroy()會被所有的service調用,不論service是通過startService()還是bindService()建立。
ServiceThe active lifetime
service積極活動的生命時間(active lifetime)是從onStartCommand()或onBind()被調用開始,它們各自處理由startService()或bindService()方法傳過來的Intent對象。
如果service是被開啓的,那麼它的活動生命週期和整個生命週期一同結束。
如果service是被綁定的,它們的活動生命週期是在onUnbind()方法返回後結束。
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:5次歷史版本
- 最近更新: a2026232403