在Android中,可以通過(guò)以下步驟來(lái)發(fā)送廣播消息:
Intent
對(duì)象,用于描述廣播消息的內(nèi)容和目標(biāo)。Intent intent = new Intent("com.example.MY_CUSTOM_ACTION");
intent.putExtra("message", "Hello, World!");
這里的com.example.MY_CUSTOM_ACTION
是自定義的廣播動(dòng)作,用于指定接收者要匹配的廣播過(guò)濾器。putExtra()
方法可以添加額外的數(shù)據(jù)。
sendBroadcast()
方法發(fā)送廣播消息。context.sendBroadcast(intent);
這里的context
是當(dāng)前上下文對(duì)象。
public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String message = intent.getStringExtra("message");
// 處理接收到的廣播消息
}
}
// 注冊(cè)廣播接收器
MyReceiver receiver = new MyReceiver();
IntentFilter filter = new IntentFilter("com.example.MY_CUSTOM_ACTION");
context.registerReceiver(receiver, filter);
這里的MyReceiver
是自定義的廣播接收器類,需要繼承BroadcastReceiver
類并實(shí)現(xiàn)onReceive()
方法。IntentFilter
用于指定接收哪些廣播動(dòng)作。
注意:發(fā)送廣播消息和接收廣播消息的代碼需要在相同的進(jìn)程中執(zhí)行,否則接收方將無(wú)法接收到廣播消息。