廣播機制(一)——————-筆記

來源:互聯網
上載者:User

一.Android廣播機制的介紹

特點:發送方並不關心接收方是否收到資料,以及受到資料之後的操作。

二.BroadcastReceiver的作用

廣播接收者(
BroadcastReceiver
)用於接收廣播
Intent
,廣播
Intent
的發送是通過調用
Context.sendBroadcast()

Context.sendOrderedBroadcast()
來實現的。通常一個廣播
Intent
可以被訂閱了此
Intent
的多個廣播接收者所接收。

廣播是一種廣泛運用的在應用程式之間傳輸資訊的機制
。而
BroadcastReceiver
是對發送出來的廣播進行過濾接收並響應的一類組件; 

來自普通應用程式,如一個代理程式更新其他應用程式某些資料已經下載完畢。

 BroadcastReceiver
自身並不實現圖形化使用者介面,但是當它收到某個通知後,
BroadcastReceiver
可以啟動
Activity
作為響應,或者通過
NotificationMananger
提醒使用者,或者啟動
Service
等等。

三.BroadcastReceive的生命週期

當點擊按鈕之後intent會到AndroidManifest.xml檔案中找是不是有匹配的action,如果有就會調用TestReceiver ,然後獲得TestReceiver 對象,再執行onReceive方法,這時候TestReceiver 對象就沒有用了,當我們再次點擊按鈕的時候就會重新獲得對象,這就是BroadcastReceiver的生命週期;

四.對於整個BroadcastReceive是如何?的自我觀點

首先,需要自己定義一個繼承自BroadcastReceive的類,然後複寫它的onReceive方法,我們主要的代碼都在這個方法裡面寫。然後,需要在AndroidManifest.xml這裡面進行註冊一下,用<receive>這個標籤進行生命,並用<intent-filter>進行過濾,這裡面有一點很重要的是intent是由action和edit這倆方面決定。然後就是編寫Activity這個類,這裡面需要需要寫一個監聽器,然後通過Intent的setAction以及Activity的sendBroadcast進行發送廣播。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.