温馨提示×

android sendbroadcast 怎么接收

小樊
84
2024-11-25 13:01:47
栏目: 编程语言

在 Android 中,发送广播(sendBroadcast)通常是通过 Intent 对象实现的。要接收一个广播,你需要创建一个 BroadcastReceiver 子类并重写 onReceive() 方法。以下是如何创建一个 BroadcastReceiver 子类并接收广播的步骤:

  1. 创建一个 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();
        }
    }
}
  1. 在 AndroidManifest.xml 文件中注册 BroadcastReceiver:
<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>
  1. 发送广播:

在你的 Activity 或其他组件中,你可以使用以下代码发送广播:

Intent intent = new Intent("com.example.MY_BROADCAST");
sendBroadcast(intent);

当广播被发送时,MyBroadcastReceiver 的 onReceive() 方法将被调用,你可以在该方法中处理接收到的广播。

0