在应用程序中发送广播比较简单。只须要调用sendBroadcast方法便可,该方法须要一个Intent对象,经过Intent对象能够发送须要广播的数据。java
/ 经过Intent类的构造方法指定广播的ID Intent intent = new Intent("net.blogjava.mobile.MYBROADCAST"); // 将要广播的数据添加到Intent对象中 intent.putExtra("text", editText.getText().toString()); // 发送广播 sendBroadcast(intent);
发送广播并不须要在AndroidManifest.xml文件中注册,但接收广播必须在AndroidManifest.xml文件中注册 receiver。android
java类ide
package net.blogjava.mobile.receiver; ... ... public class MyReceiver extends BroadcastReceiver { // 当sendbroadcast发送广播时,系统会调用onReceive方法来接收广播 @Override public void onReceive(Context context, Intent intent) { // 判断是否为sendbroadcast发送的广播 if ("net.blogjava.mobile.MYBROADCAST".equals(intent.getAction())) { Bundle bundle = intent.getExtras(); if (bundle != null) { String text = bundle.getString("text"); Toast.makeText(context, "成功接收广播:" + text, Toast.LENGTH_LONG).show(); } } } }
_ 在AndroidManifest.xml文件中注册receiver_code
<!-- 注册receiver <receiver android:name="MyReceiver"> <intent-filter> <action android:name="net.blogjava.mobile.MYBROADCAST" /> </intent-filter> </receiver>