今天我們一起來(lái)探討下安卓中BroadcastReceiver組件以及詳細(xì)分析下它的兩種注冊(cè)方式。
BroadcastReceiver也就是“廣播接收者”的意思,顧名思義,它就是用來(lái)接收來(lái)自系統(tǒng)和應(yīng)用中的廣播。在Android系統(tǒng)中,廣播體現(xiàn)在方方面面,例如當(dāng)開(kāi)機(jī)完成后系統(tǒng)會(huì)產(chǎn)生一條廣播,接收到這條廣播就能實(shí)現(xiàn)開(kāi)機(jī)啟動(dòng)服務(wù)的功能;當(dāng)網(wǎng)絡(luò)狀態(tài)改變時(shí)系統(tǒng)會(huì)產(chǎn)生一條廣播,接收到這條廣播就能及時(shí)地做出提示和保存數(shù)據(jù)等操作;當(dāng)電池電量改變時(shí),系統(tǒng)會(huì)產(chǎn)生一條廣播,接收到這條廣播就能在電量低時(shí)告知用戶及時(shí)保存進(jìn)度等等。Android中的廣播機(jī)制設(shè)計(jì)的非常出色,很多事情原本需要開(kāi)發(fā)者親自操作的,現(xiàn)在只需等待廣播告知自己就可以了,大大減少了開(kāi)發(fā)的工作量和開(kāi)發(fā)周期。而作為應(yīng)用開(kāi)發(fā)者,就需要數(shù)練掌握Android系統(tǒng)提供的一個(gè)開(kāi)發(fā)利器,那就是BroadcastReceiver。
在我們?cè)敿?xì)分析創(chuàng)建BroadcastReceiver的兩種注冊(cè)方式前,我們先羅列本次分析的大綱:
(1)對(duì)靜態(tài)和動(dòng)態(tài)兩種注冊(cè)方式進(jìn)行概念闡述以及演示實(shí)現(xiàn)步驟
(2)簡(jiǎn)述兩種BroadcastReceiver的類型(為后續(xù)注冊(cè)方式的對(duì)比做準(zhǔn)備)
(3)在默認(rèn)廣播類型下設(shè)置優(yōu)先級(jí)和無(wú)優(yōu)先級(jí)情況下兩種注冊(cè)方式的比較
(4)在有序廣播類型下兩種注冊(cè)方式的比較
(5)通過(guò)接受打電話的廣播,在程序(Activity)運(yùn)行時(shí)和終止運(yùn)行時(shí),對(duì)兩種注冊(cè)方式的比較
(6)總結(jié)兩種方式的特點(diǎn)