在Android中,Broadcast是一种广泛使用的机制,允许应用程序发送和接收消息
BroadcastReceiver
。在这个类中,你将重写onReceive()
方法,当接收到广播时这个方法将被调用。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) {
// 在这里处理接收到的广播
}
}
AndroidManifest.xml
文件中注册你的BroadcastReceiver
。这可以通过添加一个<receiver>
元素来实现。<manifest ...>
...
<application ...>
...
<receiver android:name=".MyBroadcastReceiver">
<intent-filter>
<action android:name="com.example.MY_BROADCAST" />
</intent-filter>
</receiver>
</application>
</manifest>
在这里,com.example.MY_BROADCAST
是你希望接收的广播的动作(Action)。你可以根据需要更改它。
sendBroadcast()
方法。首先,创建一个Intent
对象,并使用你之前在AndroidManifest.xml
中定义的动作。然后,使用sendBroadcast()
方法发送广播。import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 创建一个Intent对象,并设置动作
Intent intent = new Intent("com.example.MY_BROADCAST");
// 发送广播
sendBroadcast(intent);
}
}
现在,当MainActivity
发送广播时,你的MyBroadcastReceiver
类中的onReceive()
方法将被调用,并显示一个Toast消息。你可以根据需要修改onReceive()
方法以执行所需的操作。