- Android 中的每個應(yīng)用程序都可以對自己感興趣的廣播進(jìn)行注冊,這樣該程序就只會接收到自己所關(guān)心的廣播內(nèi)容,這些廣播可能是來自于系統(tǒng)的,也可能是來自于其他應(yīng)用程序的。Android 提供了一套完整的 API,允許應(yīng)用程序自由地發(fā)送和接收廣播。
- 發(fā)送廣播的方法就是借助 Intent。
- 接收廣播的方法則需要廣播接收器(Broadcast Receiver)。
1. 標(biāo)準(zhǔn)廣播
標(biāo)準(zhǔn)廣播(Normal broadcasts)是一種完全異步執(zhí)行的廣播,在廣播發(fā)出之后,所有的廣播接收器幾乎都會在同一時刻接收到這條廣播消息,因此它們之間沒有任何先后順序可言。這種廣播的效率會比較高,但同時也意味著它是無法被截斷的。
2. 有序廣播
有序廣播(Ordered broadcasts)則是一種同步執(zhí)行的廣播,在廣播發(fā)出之后,同一時刻只會有一個廣播接收器能夠收到這條廣播消息,當(dāng)這個廣播接收器中的邏輯執(zhí)行完畢后,廣播才會繼續(xù)傳遞。所以此時的廣播接收器是有先后順序的,優(yōu)先級高的廣播接收器就可以先收到廣播消息,并且前面的廣播接收器還可以截斷正在傳遞的廣播,這樣后面的廣播接收器就無法收到廣播消息了。