您好,登錄后才能下訂單哦!
一.Service
Service是一種可以在后臺長期運行且不提供用戶UI的程序,常用來處理一些耗時操作性操作,如網絡傳輸或播放音樂。
2.Service可以分為有限生命和無限生命,當系統資源不足是,Activity可能被殺掉,但Service不會。
3.啟動Service需要在清單文件中聲明<Service>標簽。啟動Service有兩種方式:
Context.startService()【不綁定,無限生命】和Context.bindService()【綁定,有限生命】.
a.startService()調用onstartCommand()方法,銷毀時直接調用onDestroy()方法。
b.bindService()調用onBind()返回客戶端的一個IBinder接口,當沒有任何對象綁定Service時, Service會被系統銷毀。
二.BroadcastReceiver
廣播是Android系統應用程序之間通信的手段,當有特定事件發生時,如來電、來短信、電池電量變化時,Android系統都會產生特定的Intent對象并自動進行廣播,而針對特定事件注冊BroadcastReceiver可以接收到這些廣播,并獲取到Intent對象中的數據進行處理。
在廣播Intent對象時可以指定用戶權限,只有獲得了相應權限的BroadcastReceiver才能接收并處理相應的廣播。
一個BroadcastReceiver對象只有在被調用了onReceive()時才有效,當從該函數返回時,該對象就無效了,生命周期也就結束了。
不能生成ui,通過NotificationManager來通知用戶有事情發生。
實例:
前面的檢測手機電量實例。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。