歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

實現一個簡單的Android廣播

一.創建一個類,繼承BroadcastReceiver類並實現onRecive方法。

[java]
  1. public class TestReceiver extends BroadcastReceiver{  
  2.    //構造函數   
  3.    public TestReceiver(){  
  4.        system.out.print(“TestReceiver類的構造函數!”);  
  5.    }  
  6.    //當接收到廣播後執行的代碼   
  7.    @override  
  8.    public void onReceive(Context context , Intent intent){  
  9.    System.out.println(“onReceive”);  
  10.    }  
  11. }  

二.在AndroidManifest.xml中注冊廣播接收條件。注意:在XML文件中注冊廣播會使程序在任何時候接收廣播,即便軟件關閉後也繼續接收。

[html]
  1. 在AndroidManifest.xml文件的<application></application>之間加入如下代碼  
  2. // android:name=”.TestReceiver”為繼承BroadcastReceiver類的類名  
  3. <receiver android:name=”.TestReceiver”>   
  4.   <intent-filter>  
  5.     //設置接收廣播的條件。只有接收到的廣播的條件和action標簽中的條件相同時才會執行TestReceiver類。  
  6.     <action android:name=”android.intent.action.EDIT”>  
  7.   </intent-filter>  
  8. </receiver>  

=====================================================================

三.創建一個按鈕單機事件,測試發送一個廣播。

[java]
  1. //創建一個Intent實例,存儲廣播數據   
  2. Intent intent = new Intent();  
  3. //設置接收廣播所需要的條件。   
  4. //Intent有許多android內置的條件(詳見幫助文檔的Intent)   
  5. inent.setAction(Intent.ACTION_EDIT);  
  6. //發送一個廣播   
  7. TestActivity.this.sendBroadcast(intent);  

=================================================================

四.使用代碼創建一個廣播接收者
在按鈕的Onclick事件中添加如下代碼

[java]
  1. //實例化處理類。TestReceiver為第一步創建的類名   
  2. receiverTest = new TestReceiver ();  
  3. //創建一個IntentFilter對象,用於存放接收廣播的條件   
  4. IntentFilter intentFilter = new IntentFilter();  
  5. //向IntentFilter對象中添加廣播接收的條件   
  6. intentFilter.addAction("android.provider.Telephony.SMS_RECEIVED");  
  7. //注冊廣播接收器。   
  8. //第一個參數為BroadcastReceiver實例對象.   
  9. //第二個參數為廣播篩選器。   
  10.   
  11. BroadcastReceiverTestActivity.this.registerReceiver(receiverTest, intentFilter);    
[java]
  1. //卸載廣播接收器試用如下代碼:   
  2. //receiverTest是廣播處理類對象。   
  3. BroadcastReceiverTestActivity.this.unregisterReceiver(receiverTest);  

五.注意:
在AndroidManifest.xml文件中注冊的廣播接收器會在任何時候接收系統的廣播,即使軟件關閉以後也會繼續接收廣播。
在代碼中注冊廣播接收器可以根據需要來注冊或卸載廣播接收器。

六.接收短信的廣播需要添加短信廣播接收權限。

[html]
  1. <uses-permission Android:name="android.permission.RECEIVE_SMS"/>  
Copyright © Linux教程網 All Rights Reserved