通過(guò)清單文件的方式注冊(cè)的。
靜態(tài)注冊(cè)步驟:1.自定義一個(gè)類,繼承自BroadCastReceiver,實(shí)現(xiàn)onReceiver方法2.在清單文件中添加<receiver>標(biāo)簽,<intent-filter>,<action>3.在主類中通過(guò)隱式意圖發(fā)送廣播,sendBroadcast(intent)4.在廣播中接收intent的值動(dòng)態(tài)注冊(cè): 特點(diǎn):當(dāng)你點(diǎn)擊某個(gè)事件時(shí),廣播才會(huì)生成,并且App退出時(shí),廣播則死亡,在廣播死亡之前,你要手動(dòng)的注銷廣播,否則會(huì)報(bào)錯(cuò)。通過(guò)代碼的方式注冊(cè)的。動(dòng)態(tài)注冊(cè)步驟:1.自定義類,繼承自BroadCastReceiver,實(shí)現(xiàn)onReceiver方法2.在自定義類中,添加一個(gè)靜態(tài)常量Action3.在主類中通過(guò)按鈕實(shí)現(xiàn)注冊(cè)。調(diào)用registerReceiver方法(你要實(shí)現(xiàn)的廣播類,意圖過(guò)濾器)4.發(fā)送廣播。sendBroadCast(intent)5.在onDestroy方法中,銷毀廣播unregisterReceiver,記住要加判斷,如果不為空則銷毀。廣播分兩種:普通廣播 : 特點(diǎn):當(dāng)有多個(gè)廣播存在時(shí),接收消息的時(shí)候,沒(méi)有固定順序,如果為靜態(tài)注冊(cè),則通過(guò)清單文件的方式一次向下接收普通廣播,如果為靜態(tài)注冊(cè),則根據(jù)在清單文件中的位置依次從上至下加載。如果為動(dòng)態(tài)注冊(cè),則會(huì)根據(jù)代碼的加載順序進(jìn)行發(fā)送。有序廣播:特點(diǎn):他是根據(jù)一個(gè)屬性值,整形的,數(shù)值越大,優(yōu)先級(jí)越高,數(shù)值越小,優(yōu)先級(jí)越小有序廣播,是通過(guò)PRiority來(lái)區(qū)別的,跟你的清單文件的順序沒(méi)有任何關(guān)系,并且發(fā)送廣播的時(shí)候不是通過(guò)sendBroadCast發(fā)送的,而是通過(guò)sendOrderedBroadcast發(fā)送的,priority的值越大,則這個(gè)廣播的優(yōu)先級(jí)越高。新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注