標籤:bundle mes 過濾 標識 view raw player height rate
利用Intent發送廣播訊息,廣播訊息的內容可以是應用程式相關的資料資訊,也可以是Android的系統訊息例如:網路連接變化、電池電量變化、接收簡訊或系統設定變化。
:
代碼:(主Activity)
1 package com.example.playmessage; 2 3 import android.app.Activity; 4 import android.content.Intent; 5 import android.os.Bundle; 6 import android.view.Menu; 7 import android.view.MenuItem; 8 import android.view.View; 9 import android.view.View.OnClickListener;10 import android.widget.Button;11 12 public class MainActivity extends Activity {13 Button ob1;14 Intent intent;15 @Override16 protected void onCreate(Bundle savedInstanceState) {17 super.onCreate(savedInstanceState);18 setContentView(R.layout.activity_main);19 20 ob1=(Button) findViewById(R.id.bu1); //按鈕21 intent=new Intent("com.example.playmessage"); //設定唯一標識22 ob1.setOnClickListener(new OnClickListener() {23 24 @Override25 public void onClick(View v) {26 // TODO Auto-generated method stub27 sendBroadcast(intent); //發送廣播28 29 }30 });31 32 33 }34 35 36 }
Broadcast-Receiver
1 package com.example.playmessage; 2 3 import android.content.BroadcastReceiver; 4 import android.content.Context; 5 import android.content.Intent; 6 import android.media.MediaPlayer; 7 import android.widget.Toast; 8 9 public class MyReceiver extends BroadcastReceiver {10 public MyReceiver() {11 }12 MediaPlayer play;13 @Override14 public void onReceive(Context context, Intent intent) {15 // TODO: This method is called when the BroadcastReceiver is receiving16 // an Intent broadcast.17 Toast.makeText(context, "收到廣播,播放音樂",2).show();;18 play=MediaPlayer.create(context,R.raw.sleep);19 play.start();20 21 }22 }
需要在資訊清單檔中Broadcast-Receiver下添加Intent的過濾
<intent-filter>
<action android:name=" 設定的唯一標識 " />
<intent-filter>
安卓Broadcast Receiver(廣播訊息)應用執行個體