在 Android 中,發送廣播(sendBroadcast)通常是通過 Intent 對象實現的。要接收一個廣播,你需要創建一個 BroadcastReceiver 子類并重寫 onReceive() 方法。以下是如何創建一個 BroadcastReceiver 子類并接收廣播的步驟:
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// 在這里處理接收到的廣播
String action = intent.getAction();
if (action.equals("com.example.MY_BROADCAST")) {
Toast.makeText(context, "收到廣播", Toast.LENGTH_SHORT).show();
}
}
}
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example">
<application
...>
...
<receiver android:name=".MyBroadcastReceiver">
<intent-filter>
<action android:name="com.example.MY_BROADCAST" />
</intent-filter>
</receiver>
</application>
</manifest>
在你的 Activity 或其他組件中,你可以使用以下代碼發送廣播:
Intent intent = new Intent("com.example.MY_BROADCAST");
sendBroadcast(intent);
當廣播被發送時,MyBroadcastReceiver 的 onReceive() 方法將被調用,你可以在該方法中處理接收到的廣播。