亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

Android開發之BroadcastReceiver用法實例分析

2020-04-11 11:32:17
字體:
來源:轉載
供稿:網友

本文實例講述了Android開發中BroadcastReceiver用法。分享給大家供大家參考。具體分析如下:

在Android系統中,廣播(Broadcast)是在組件之間傳播數據(Intent)的一種機制。

Braodcast Receiver顧名思義就是廣播接收器,它和事件處理機制類似,但是事件處理機制是程序組件級別的(比如:按鈕的單擊事件),而廣播事件處理機制是系統級別的。我們可以用Intent來啟動一個組件,也可以用sendBroadcast()方法發起一個系統級別的事件廣播來傳遞消息。我們同樣可以在自己的應用程序中實現Broadcast Receiver來監聽和響應廣播的Intent。

事件的廣播通過創建Intent對象并調用sendBroadcast()方法將廣播發出。事件的接受是通過定義一個繼承BroadcastReceiver的類來實現的,繼承該類后覆蓋其onReceive()方法,在該方法中響應事件。

下面是android系統中定義了很多標準的Broadcast Action來響應系統的廣播事件。

①ACTION_TIME_CHANGED(時間改變時觸發)
②ACTION_BOOT_COMPLETED(系統啟動完成后觸發)--比如有些程序開機后啟動就是用這種方式來實現的
③ACTION_PACKAGE_ADDED(添加包時觸發)
④ACTION_BATTERY_CHANGED(電量低時觸發)

下面看一個例子:

我們在一個按鈕上綁定一個事件,事件通過發送一個廣播來觸發logcat打出一個log。

先看manifest文件。

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"   package="com.example.test"   android:versionCode="1"   android:versionName="1.0" >   <uses-sdk     android:minSdkVersion="8"     android:targetSdkVersion="16" />  <application     android:allowBackup="true"     android:icon="@drawable/ic_launcher"     android:label="@string/app_name"     android:theme="@style/AppTheme" >    <activity       android:name="com.example.broadcast.BroadcastReceiverActivity"       android:label="@string/app_name_bc" >      <intent-filter>        <action android:name="android.intent.action.MAIN" >        </action>        <category android:name="android.intent.category.LAUNCHER" >        </category>      </intent-filter>    </activity>    <receiver android:name="com.example.broadcast.HelloBroadReciever" >      <intent-filter>        <action android:name="comz.test.printlog" >        </action>      </intent-filter>    </receiver>  </application></manifest>

上面聲明了一個receiver。接收名字是comz.test.printlog的消息。

看activity:

package com.example.broadcast;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.Button;import com.example.test.R;public class BroadcastReceiverActivity extends Activity {  @Override  public void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    Button b1 = (Button) findViewById(R.id.broadcastBtn);    b1.setOnClickListener(new View.OnClickListener() {      @Override      public void onClick(View v) {        Log.e("mason", "here");        // 定義一個intent        Intent intent = new Intent().setAction("comz.test.printlog")            .putExtra("info", "here is your info.");        // 廣播出去        sendBroadcast(intent);      }    });  }}

在這段代碼中,定義一個intent并發送廣播出去。

看BroadReceiver的代碼:

package com.example.broadcast;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.util.Log;public class HelloBroadReciever extends BroadcastReceiver {  // 如果接收的事件發生  @Override  public void onReceive(Context context, Intent intent) {    Log.e("mason", "on receive");    if (intent.getAction().equals("comz.test.printlog")) {      Log.e("mason", intent.getStringExtra("info"));    }  }}

這是BroadcastReceiver的代碼。

在接收到消息之后,如果消息是comz.test.printlog,則打印消息。

希望本文所述對大家的Android程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美性猛交xxxx黑人| 国产欧美日韩精品在线观看| 国产精自产拍久久久久久蜜| 国产女同一区二区| 欧美激情国产日韩精品一区18| 欧美性理论片在线观看片免费| 欧美日韩裸体免费视频| 91精品啪在线观看麻豆免费| 国产成人综合久久| 欧美国产日韩一区二区在线观看| 亚洲综合色av| 91久久久精品| 日本aⅴ大伊香蕉精品视频| 国产精品久久久久久超碰| 日韩精品极品视频免费观看| 欧美专区在线观看| 国产91免费看片| 国产精品吴梦梦| 国产伊人精品在线| 国产伊人精品在线| 成人网址在线观看| 26uuu日韩精品一区二区| 欧美性xxxx极品hd满灌| 亚洲欧洲成视频免费观看| 国产精品私拍pans大尺度在线| 成人免费在线视频网站| 成人久久一区二区| 精品亚洲国产成av人片传媒| 亚洲视频国产视频| 亚洲精品久久视频| 欧美视频专区一二在线观看| 亚洲综合精品一区二区| 亚洲片国产一区一级在线观看| 欧美日韩精品在线播放| 久久97久久97精品免视看| 欧美色videos| 亚洲a一级视频| 成人免费视频a| 国产精品网站视频| 亚洲片在线观看| 成人妇女免费播放久久久| 成人精品一区二区三区电影黑人| 精品国内产的精品视频在线观看| 日韩av中文字幕在线播放| 日本高清不卡的在线| 国产精品久久久久久av福利| 久久精视频免费在线久久完整在线看| 日韩精品在线免费观看| 日本久久久久久久久| 色综合久久88色综合天天看泰| 国产精品丝袜久久久久久不卡| 91亚洲精品一区二区| 亚洲网站在线播放| 日韩hd视频在线观看| 91精品国产九九九久久久亚洲| 欧美乱妇高清无乱码| 国产91久久婷婷一区二区| 欧美日韩国产综合视频在线观看中文| 国产欧美日韩高清| 欧美激情极品视频| 亚洲精品成人久久| 亚洲国产日韩欧美在线图片| 国产精品高清在线| 欧美日韩成人在线播放| 欧美成人精品在线视频| 乱亲女秽乱长久久久| 亚洲综合最新在线| 国产成人一区二区三区电影| 欧美激情中文字幕乱码免费| 国产精品入口免费视频一| 久精品免费视频| 欧美精品九九久久| 国产亚洲人成a一在线v站| 欧美天天综合色影久久精品| 国产噜噜噜噜久久久久久久久| 亚洲国产一区二区三区四区| 国产欧美精品在线播放| 欧美理论片在线观看| 国产aaa精品| 欧美成aaa人片在线观看蜜臀| 国产婷婷97碰碰久久人人蜜臀| 国产欧美va欧美va香蕉在线| 成人激情视频免费在线| 欧美日韩在线视频一区二区| 日韩精品在线看| 911国产网站尤物在线观看| 国产成人一区二区三区电影| 欧美日韩国产精品一区| 国产精品亚洲视频在线观看| 97国产一区二区精品久久呦| 亚洲国产精品一区二区三区| 欧美二区在线播放| 另类视频在线观看| 久久精品国产一区二区电影| 亚洲欧美日韩综合| 最近2019年中文视频免费在线观看| 日韩欧美一区二区三区久久| 日韩精品999| 日本韩国在线不卡| 91精品国产一区| 久久人91精品久久久久久不卡| 亚洲电影免费观看高清完整版在线观看| 久久久久久网站| 疯狂蹂躏欧美一区二区精品| 欧美一级片久久久久久久| 国产欧美在线观看| 欧美黄色片在线观看| 亚洲国产精品一区二区久| 国产精品高清在线| 日韩在线观看免费高清| 国产精品亚洲片夜色在线| 7777kkkk成人观看| 国产午夜精品视频| 91久久中文字幕| 日本视频久久久| 69**夜色精品国产69乱| 久久久久久中文| 国产精品日韩精品| 九九热这里只有精品免费看| 国产有码在线一区二区视频| 精品成人av一区| 在线精品视频视频中文字幕| 亚洲欧美国产制服动漫| 日韩在线观看免费网站| 成人两性免费视频| 亚洲一区二区三区乱码aⅴ| 日韩网站在线观看| 国产精品爽爽ⅴa在线观看| 深夜福利91大全| 日韩欧美国产免费播放| 久久精品国产91精品亚洲| 久久国产精品久久久久久久久久| 亚洲天堂男人天堂女人天堂| 亚洲一区二区三区sesese| 日韩黄色在线免费观看| 亚洲天堂av在线免费观看| 亚洲毛茸茸少妇高潮呻吟| 国产一区私人高清影院| 福利一区福利二区微拍刺激| 97超碰蝌蚪网人人做人人爽| 久久久久久伊人| 隔壁老王国产在线精品| 日韩中文在线中文网在线观看| 欧美亚洲日本黄色| 欧美成年人在线观看| 亚洲女人天堂av| 欧美精品成人在线| 成人激情视频小说免费下载| 欧美精品久久久久| 永久免费毛片在线播放不卡| 亚洲国产97在线精品一区| 清纯唯美亚洲激情| 久久精品国产久精国产一老狼| 成人免费xxxxx在线观看| 欧洲美女免费图片一区| 国产一区二区日韩精品欧美精品| 国产噜噜噜噜久久久久久久久| 国产欧美在线播放| 色综合色综合网色综合| 久久男人av资源网站| 91免费看视频.| 欧美老少做受xxxx高潮| 国产成人拍精品视频午夜网站| 亚洲精品久久久久久久久|