Android BroadcastReceiver的简单使用
来源:互联网 发布:mac怎么关闭开机密码 编辑:程序博客网 时间:2024/06/06 10:11
创建广播接收器:
创建自己的BroadcastReceiver,我们需要继承android.conent.BroadcastReceiver,并实现其onReceiver()方法:
- public class MyBroadcastReceiver extends BroadcastReceiver {
- private static final String TAG = "MyBroadcastReceiver";
- @Override
- public void onReceive(Context context, Intent intent) {
- String msg = intent.getStringExtra("msg");
- Log.i(TAG, msg);
- }
- }
静态注册:
静态注册是在AndroidManifest.xml文件中配置。
- <receiver android:name=".MyBroadcastReceiver">
- <intent-filter>
- <action android:name="android.intent.action.MY_BROADCAST" />
- <category android:name="android.intent.category.DEFAULT" />
- </intent-filter>
- </receiver>
动态注册需要在代码中动态的指定广播的地址并注册,通常是在Activity或是Service中注册广播。
- MyBroadcastReceiver receiver = new MyBroadcastReceiver();
- IntentFilter filter = new IntentFilter();
- filter.addAction("android.intent.action.MY_BROADCAST");
- registerReceiver(receiver, filter);
- @Override
- protected void onDestroy() {
- super.onDestroy();
- unregisterReceiver(receiver);
- }
两种注册方法的区别:
静态注册是常驻型,也就是说当应用关闭后,如果有广播传来,MyBroadcastReceiver也会被系统调用而自动运行
动态注册不是常驻型,也就是广播会跟随程序的生命周期。
发送(普通)广播:
- Intent intent = new Intent("android.intent.action.MY_BROADCAST");
- intent.putExtra("msg", "Hello, BroadcastReceiver.");
- sendBroadcast(intent);
注:有关普通广播和有序广播相关的内容请看我的另一篇博文:Android的普通广播和有序广播。
0 0
- Android -- BroadCastReceiver的简单使用
- Android BroadcastReceiver的简单使用
- Android—BroadcastReceiver的简单使用
- BroadcastReceiver的简单使用
- BroadcastReceiver的简单使用
- BroadcastReceiver的简单使用
- 76 Android BroadcastReceiver简单使用
- [Android] BroadCastReceiver的使用
- Android -- BroadcastReceiver的使用
- Android BroadcastReceiver的使用
- 【android】BroadcastReceiver的使用
- Android BroadcastReceiver 的简单应用
- BroadcastReceiver的简单封装使用
- Android 交互功能组件BroadcastReceiver 的简单使用
- Android Service、Activity、BroadcastReceiver简单使用
- Android广播BroadcastReceiver最简单使用示例
- android组件BroadCastReceiver简单使用(一)
- android之BroadcastReceiver的使用
- 建议38:小心闭包中的陷阱
- iOS UIView动画实践(五):Keyframe Animation
- map、string使用的注意事项
- PCI-1780板卡计数功能调用
- 冒泡排序实现整数数组的排序
- Android BroadcastReceiver的简单使用
- Node初学者入门,一本全面的NodeJS教程(转)
- canvas 描述文字
- VS2010/MFC编程入门之四十(文档、视图和框架:各对象之间的关系)
- starUML破解
- 在云服务器(Windows系统)端建立ftp服务端,并上传文件
- 用Laravel5.2从零开始做PHP微信APP支付接口
- Go-Package
- SSH集成框架概述