2022秋国家开放大学开安卓网络开发技术 形考二

更新时间:2023-07-23 04:02:32 阅读: 评论:0

2022秋国家开放大学开安卓网络开发技术形考二
简答题
在l中注册广播接收器BootBroadcastReceiver。答:BroadcastReceiver广播接收器
用于监听/接受Android应用分发的各类广播并做出相应的响应
应用场景:
监听系统事件:如开机广播,网络链接与断开,屏幕转向灯
不同组件间(Activity/Service,包括不同APP间)的通信
多线程通信
先自定义一个广播接收器,创建MyBroadcastReceiver类来继承广播接收器类,并实现它内部的方法
public class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
}中国公学
}
广播接收器的注册方法分为静态注册和动态注册两种方式
静态注册
在l文件的<application>标签内声明
<!--静态注册广播接收器-->
<receiver
android:name=".MyBroadcastReceiver">
花雕酒和黄酒有什么区别
<!--接受哪些广播-->
<intent-filter>
<!--开机广播-->
三个不发生>玉米面小饼<action android:name="android.intent.action.BOOT_COMPLETED"/>
<!--电量低广播-->
<action android:name="android.intent.action.BATTERY_LOW"/>
</intent-filter>
</receiver>
完成注册后就可以在MyBroadcastReceiver类中接受广播实现相关功能
public class MyBroadcastReceiver extends BroadcastReceiver {
private static final String TAG = "MyBroadcastReceiver";
@Override
public void onReceive(Context context, Intent intent) {
/
/ 接受广播
if (intent != null) {
// 接收到的什么广播(广播的名称)
String action = Action();
Log.d(TAG, "onReceive: " + action);
}
}
}
这里已经可以通过意图对象来接受广播信息并进行处理了浙江菜谱大全
动态注册
动态注册在onCreate()方法里进行注册
@Override
protected void onCreate(Bundle savedInstanceState) {
tContentView(R.layout.activity_main);
// 新建一个广播接收器
broadcastReceiver = new MyBroadcastReceiver();
// 要接收哪些广播
IntentFilter intentFilter = new IntentFilter();
/// 电量低广播
intentFilter.addAction(Intent.ACTION_BATTERY_LOW);
// 注册广播接收器
registerReceiver(broadcastReceiver, intentFilter);    }
动态注册的广播接收器必须要在onDestroy()方法里面取消注册
注册和取消注册要一一对应,不然会报错,内存会泄漏
公司年度报告中国银行留学贷款@Override
protected void onDestroy() {
// 取消注册广播接收器
if (broadcastReceiver != null) {
unregisterReceiver(broadcastReceiver);
}
离家的孩子歌词}

本文发布于:2023-07-23 04:02:32,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1092858.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:广播   注册   接收器   接受   网络
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图