<Android 基础(二)> BroadcastReceiver
2024-08-24 12:08:26
介绍
BroadcastReceiver:广播接收者,很形象,广播发送,类比生活中的广播,有能力听得到的都可以介绍到这个信息,然后在大脑中反映。对应到Android中就是SendBroadcast和onReceive。
广播之间信息的传递是通过Intent对象来传递的,Intent调用分为显示调用的隐式调用两种。
使用方法
1 . 广播接收者
public class MyReceiver extends BroadcastReceiver {
public static final String HELLOACTION = "com.example.mraz.learnbroadcastreceiver.android.intent.action.HELLO";
public MyReceiver() {
}
@Override
public void onReceive(Context context, Intent intent) {
String str = intent.getStringExtra("message");
System.out.println("on Reveiver" + str);
}
}
2 . 静态注册
AndroidManifest.xml
<receiver
android:name=".MyReceiver"
android:enabled="true"
android:exported="true"
>
<intent-filter>
<action android:name="com.example.mraz.learnbroadcastreceiver.android.intent.action.HELLO"/>
</intent-filter>
</receiver>
3 . 动态注册
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(MyReceiver.HELLOACTION);
registerReceiver(myReceiver, intentFilter);
unregisterReceiver(myReceiver);//解除注册
测试结果
Demo界面
静态注册方式下:
发送广播->取消注册 ->发送广播
动态注册方式下:
发送广播->注册广播->发送广播-> 取消注册 -> 发送广播
天色已晚,来日再战!!
最新文章
- rails: 的cookie小结
- 基于Python的函数回归算法验证
- EXTJS4自学手册——EXT基本方法、属性(mixins多继承、statics、require)
- 【BZOJ】3239: Discrete Logging
- SQL 2012 连接失败
- (转)iOS Wow体验 - 第六章 - 交互模型与创新的产品概念(1)
- sybase从表A创建表B
- Luogu P3390 【模板】矩阵快速幂
- hdu5988 Coding Contest
- nodejs之connect
- 解决github网站打开慢的问题
- 洛谷 P1457 城堡 The Castle 解题报告
- 如何加速tomcat启动速度
- windows8.1 初体验
- [转]玩转UltraEdit,UE常见快捷键操作
- Openstack架构简介(一)
- JSP--JDBC技术
- jdbc报java.lang.ClassNotFoundException: com.mysql.jdbc.Drive
- QT creator 调试问题
- 量化交易之 tushare