android尝试接收广播,5s内收到广播且获得status值标记为true的示例代码
时间: 2024-03-08 20:50:07 浏览: 60
android广播接收例子
3星 · 编辑精心推荐
好的,以下是一个简单的 Android 广播接收器示例代码,可以在 5 秒内接收到广播并且状态值为 true:
```java
public class MyBroadcastReceiver extends BroadcastReceiver {
public static final String ACTION_CUSTOM_BROADCAST = "com.example.android.custombroadcast";
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(ACTION_CUSTOM_BROADCAST)) {
// 检查状态值是否为 true
boolean status = intent.getBooleanExtra("status", false);
if (status) {
// 在控制台打印消息
Log.d("MyBroadcastReceiver", "Received custom broadcast with status = true");
}
}
}
}
```
接下来,在你的 Android 应用程序中注册这个广播接收器,并发送自定义广播:
```java
// 创建一个 IntentFilter 对象来过滤自定义广播
IntentFilter filter = new IntentFilter(MyBroadcastReceiver.ACTION_CUSTOM_BROADCAST);
// 注册广播接收器
MyBroadcastReceiver receiver = new MyBroadcastReceiver();
registerReceiver(receiver, filter);
// 发送自定义广播,并将状态值设置为 true
Intent customBroadcastIntent = new Intent(MyBroadcastReceiver.ACTION_CUSTOM_BROADCAST);
customBroadcastIntent.putExtra("status", true);
sendBroadcast(customBroadcastIntent);
```
这个示例代码中,我们创建了一个自定义广播接收器,并在 `onReceive` 方法中检查广播中的状态值是否为 true。然后在应用程序中注册广播接收器,并发送自定义广播。当广播接收器收到广播并且状态值为 true 时,它将在控制台打印一条消息。
阅读全文