Android廣播接收者_(dá)筆記

廣播接收者的分類,兩種分法:

一、分為全局廣播和本地廣播

二、分為有序廣播和無序廣播



廣播接收者的注冊,動(dòng)態(tài)注冊和靜態(tài)注冊



第一行代碼劃線筆記:

1、發(fā)送廣播的方法:借助Intent

2、動(dòng)態(tài)注冊的廣播接收器可以自由的控制注冊與注銷,在靈活性方面有很大的優(yōu)勢,但是它也存在著一個(gè)缺點(diǎn),即必須要在程序啟動(dòng)之后才能接收到廣播,因?yàn)樽缘倪壿嬍菍懺趏nCreat()方法中的。

3、需要注意的是,不要在onReceive()方法中添加過多的邏輯或者進(jìn)行任何的耗時(shí)操作,因?yàn)?b>在廣播接收器中是不允許開啟線程的,當(dāng)onReceive()方法運(yùn)行了較長時(shí)間而沒有結(jié)束時(shí),程序就會(huì)報(bào)錯(cuò)。因此廣播接收器更多的是扮演一種打開程序其他組件的角色,比如創(chuàng)建一條狀態(tài)欄通知,或者啟動(dòng)一個(gè)服務(wù)等。

4、廣播是一種可以跨進(jìn)程的通信方式

5、為了能夠解決廣播的安全性問題,Android引入了一套本地廣播機(jī)制,使用這個(gè)機(jī)制發(fā)出的廣播只能夠在應(yīng)用程序的內(nèi)部進(jìn)行傳遞,并且廣播接收器也只能接收來自本應(yīng)用程序發(fā)出的廣播。 LocalBroadcastManager

6、本地廣播是無法通過靜態(tài)注冊的方式來接收的

7、發(fā)送本地廣播比發(fā)送全局廣播更加高效

8、實(shí)現(xiàn)強(qiáng)制下線功能:當(dāng)我們被通知需要強(qiáng)制下線時(shí),可能處于任何一個(gè)界面,難道需要在每個(gè)界面上都編寫一個(gè)彈出對話框的邏輯?強(qiáng)制下線功能需要先關(guān)閉所有的活動(dòng),然后回到登錄界面。應(yīng)該在哪里創(chuàng)建廣播接收器?答案很明顯,只需要在BaseActivity中動(dòng)態(tài)注冊一個(gè)廣播接收器就可以了,因?yàn)樗械幕顒?dòng)都是繼承自BaseActivity的。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容