Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> Android中的Intent廣播(broadcast)簡介

Android中的Intent廣播(broadcast)簡介

編輯:Android開發教程

Intent可以使用sendBroadcast(), 在應用組件之間廣播事件;

使用BroadReceiver類監聽和響應Broadcast Intent, 需要注冊(register)和過濾器(intent-filter);

1. 創建Broadcast Intent

構建需要廣播的Intent, 包含Intent標識字符串, 和數據(data, extras), 使用sendBroadcast()發送;

Intent標識字符串, 可以標識要廣播的字符串, 應該是能夠標志的唯一字符串,

public static final String [ACTION_STRING] = "[mzx].[clwang].action.[ACTION_STRING]";

Intent包含數據, 進行廣播, 可以使用data屬性指定一個URI, 可以在extras添加額外的基本值;

Intent intent = new Intent("[mzx].[clwang].action.[ACTION_STRING");

sendBroadcast(intent);

2. 接收Broadcast Intent

使用Broadcast Receiver來監聽Broadcast Intent, 在代碼或manifest中注冊, 使用Intent FIlter表明監聽的Intent(標識符)和數據;

應用程序可以被Intent啟動, 可以創建事件驅動的應用程序;

Broadcast Receiver, 繼承BroadcastReceiver類, 重寫onReceive事件, 進行處理, 必須在5秒之內完成;

代碼注冊:

注冊BroadcastReceiver, 需要使用IntentFilter, 指明標識符; 使用BroadReceiver類, 指明接收器;

注冊: registerReceiver(receiver, filter); 注銷:unregisterReceiver(receiver);

Manifest注冊:

<receiver android:name = ".[Receiver]">

   <intent-filter>

       <action android:name="[mzx].[clwang].action.[ACTION_STRING">

   </intent-filter>

</receiver>

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved