客戶端必須實現serviceConnectionide
返回IBinder,客戶和服務交互的接口spa
當service是私有的,並且和客戶運行在同一個進程,最好的實現IBinder的方案是繼承Binder.返回的IBinder可用調用實現的Binder和service的public方法。繼承
當客戶和service在進程間進行交互時,最簡單的生成Binder的方式是用messenger;基於AIDL,只能在某個時刻出來一個請求接口
AIDL,當一次須要同時處理多個請求時(許多程序用不到)進程
只有activities, services, and content providers能夠綁定service。broadcast receiver不能夠。資源
當組件被銷燬時會自動解綁,可是當你不須要時要手動解綁,不用的時候就讓服務中止,以避免浪費資源。it
綁定和解綁應該成對出現。io
不要再onresum 和onpause中進行綁定和解綁,這樣會很頻繁ast
當onunbind的時候return true,再次綁定的時候會調用onrebind
service