BroadcastRecever的使用方法

BroadcastReceiver

在Android中桨仿,Broadcast是一種廣泛運(yùn)用的在應(yīng)用程序之間傳輸信息的機(jī)制启上。而BroadcastReceiver是對(duì)發(fā)送出來的 Broadcast進(jìn)行過濾接受并響應(yīng)的一類組件提前。

下面將詳細(xì)的闡述如何發(fā)送Broadcast和使用BroadcastReceiver過濾接收的過程:

首先在需要發(fā)送信息的地方伏蚊,把要發(fā)送的信息和用于過濾的信息(如Action巡通、Category)裝入一個(gè)Intent對(duì)象拦盹,然后通過調(diào)用 sendOrderBroadcast()或sendStickyBroadcast()方法鹃祖,把 Intent對(duì)象以廣播方式發(fā)送出去。

當(dāng)Intent發(fā)送以后普舆,所有已經(jīng)注冊(cè)的BroadcastReceiver會(huì)檢查注冊(cè)時(shí)的IntentFilter是否與發(fā)送的Intent相匹配惯豆,若匹配則就會(huì)調(diào)用BroadcastReceiver的onReceive()方法。所以當(dāng)我們定義一個(gè)BroadcastReceiver的時(shí)候奔害,都需要實(shí)現(xiàn)onReceive()方法楷兽。

注冊(cè)BroadcastReceiver有兩種方式:

靜態(tài)注冊(cè):在AndroidManifest.xml中用標(biāo)簽生命注冊(cè),并在標(biāo)簽內(nèi)用標(biāo)簽設(shè)置過濾器华临。

<receiver android:name="myRecevice"> //繼承BroadcastReceiver芯杀,重寫onReceiver方法

<intent-filter>

<action android:name="com.dragon.net"></action> //使用過濾器,接收指定action廣播

</intent-filter>

</receiver>

動(dòng)態(tài)注冊(cè):

IntentFilter intentFilter = new IntentFilter();

intentFilter.addAction(String); //為BroadcastReceiver指定action雅潭,使之用于接收同action的廣播

  registerReceiver(BroadcastReceiver,intentFilter);

一般:在onStart中注冊(cè)揭厚,onStop中取消unregisterReceiver

指定廣播目標(biāo)Action:Intent intent = new Intent(actionString);

并且可通過Intent攜帶消息 :intent.putExtra("msg", "hi,我通過廣播發(fā)送消息了");

發(fā)送廣播消息:Context.sendBroadcast(intent )

其中在動(dòng)態(tài)注冊(cè)中可將BroadcastReceiver的繼承類進(jìn)行封裝,添加構(gòu)造函數(shù)和BroadcastReceiver注冊(cè)
轉(zhuǎn)載:https://www.cnblogs.com/jico/articles/1838293.html
一扶供、注冊(cè)方式

intent.setAction("BC_One");

1.靜態(tài)注冊(cè)

<receiver android:name = "繼承BroadcastReceiver的子類">

<intent-filter>

<action android:name = "BC_One"/>

</intent-filter>

</receiver>

2.動(dòng)態(tài)注冊(cè)

IntentFilter filter = new IntentFilter("BC_One");

//這兩句話等價(jià)于上面一句話

IntentFilter filter = new IntentFilter();

filter.addAction("BC_One");

BC2 bc = new BC2(); //這個(gè)是繼承BroadcastReceive這個(gè)子類

registerReceiver(bc,filter);

動(dòng)態(tài)注冊(cè)優(yōu)先級(jí)高于靜態(tài)注冊(cè)

   sendBroadcast(intent1);
發(fā)送廣播后筛圆,會(huì)回調(diào) 以下函數(shù),這個(gè)函數(shù)對(duì)應(yīng)的類就是用
registerReceiver函數(shù)綁定BroadcastReceive的intent
 BC2 bc = new BC2();  //這個(gè)是繼承BroadcastReceive這個(gè)子類     
registerReceiver(bc,filter);
 @Override
 public void onReceive(Context context, Intent intent) {}

參考:http://www.imooc.com/article/72643

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末椿浓,一起剝皮案震驚了整個(gè)濱河市太援,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌扳碍,老刑警劉巖提岔,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異笋敞,居然都是意外死亡碱蒙,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門夯巷,熙熙樓的掌柜王于貴愁眉苦臉地迎上來赛惩,“玉大人,你說我怎么就攤上這事趁餐∨缂妫” “怎么了?”我有些...
    開封第一講書人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵澎怒,是天一觀的道長(zhǎng)褒搔。 經(jīng)常有香客問我阶牍,道長(zhǎng),這世上最難降的妖魔是什么星瘾? 我笑而不...
    開封第一講書人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任走孽,我火速辦了婚禮,結(jié)果婚禮上琳状,老公的妹妹穿的比我還像新娘磕瓷。我一直安慰自己,他們只是感情好念逞,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開白布困食。 她就那樣靜靜地躺著,像睡著了一般翎承。 火紅的嫁衣襯著肌膚如雪硕盹。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,970評(píng)論 1 284
  • 那天叨咖,我揣著相機(jī)與錄音瘩例,去河邊找鬼。 笑死甸各,一個(gè)胖子當(dāng)著我的面吹牛垛贤,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播趣倾,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼聘惦,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了儒恋?” 一聲冷哼從身側(cè)響起善绎,我...
    開封第一講書人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎碧浊,沒想到半個(gè)月后涂邀,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瘟仿,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡箱锐,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了劳较。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片驹止。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖观蜗,靈堂內(nèi)的尸體忽然破棺而出臊恋,到底是詐尸還是另有隱情,我是刑警寧澤墓捻,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布抖仅,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏撤卢。R本人自食惡果不足惜环凿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望放吩。 院中可真熱鬧智听,春花似錦、人聲如沸渡紫。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)惕澎。三九已至莉测,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間唧喉,已是汗流浹背悔雹。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留欣喧,地道東北人腌零。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像唆阿,于是被迫代替她去往敵國(guó)和親益涧。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

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

  • Broadcasts Android apps can send or receive broadcast mes...
    woitaylor閱讀 6,167評(píng)論 0 12
  • 1驯鳖、動(dòng)態(tài)注冊(cè)過程源碼分析: 在Activity中動(dòng)態(tài)注冊(cè)廣播室闲询,在注冊(cè)方法之前其實(shí)省略了Context,也就是實(shí)際...
    騎著豬的蝸牛閱讀 712評(píng)論 0 1
  • 2.1 Activity 2.1.1 Activity的生命周期全面分析 典型情況下的生命周期:在用戶參與的情況下...
    AndroidMaster閱讀 3,019評(píng)論 0 8
  • 1.廣播的分類 (1)按照發(fā)送的方式分類 標(biāo)準(zhǔn)廣播是一種異步的方式來進(jìn)行傳播的浅辙,廣播發(fā)出去之后扭弧,所有的廣播接收者幾...
    曹豐斌閱讀 34,107評(píng)論 0 22
  • 謹(jǐn)以文章記錄學(xué)習(xí)歷程,如有錯(cuò)誤還請(qǐng)指明记舆。 前言 我們上學(xué)時(shí)都有過這樣的經(jīng)歷鸽捻,當(dāng)我們?cè)诨疖囌玖熊嚭蜍囀抑械却龝r(shí),每當(dāng)...
    whd_Alive閱讀 7,608評(píng)論 2 13