BroadcastReciever简单用法示例
2017-07-25 10:41
465 查看
&&.
生命周期非常短,在接受到广播时创建,onRecieve( … )方法执行完后销毁;
10s内onRecieve(…)方法未执行完,会出现ANR错误;
BroadcastReciever简单用法示例:
//发送广播
Intent intent = new Intent( xxx.this, xxx)
sendBraodcast( intent );
注:
1.可以为intent添加数据
2.可以不使用显式Intent,而是使用隐式设置目标,通过对应BroadcastReciever的<intent-filter>过滤来命中目标
例如:intent.setAction( "xxxx.xxx.xxx");
//自定义BroadcastReciever
public class TestReciever extends BroadcastReciever {
public void onRevice( Context context, Intent intent ){
//处理逻辑,可从intent中获取所传递数据
}
}
1.静态注册
//BroadcastReciever 在AndroidManifest.xml文件中的注册
//可以不设置<intent-filter>,但是那样貌似就无法通过隐式Intent来命中该Reciver
<reciever android:name=".xxxx.TestReciever" >
<intent-filter>
..........
</intent-filter>
</reciever>
2.Activity或Service中动态注册
注意:如果组件销毁时,没有事先反注册,会抛出异常
//注册
MyReceiver receiver = new MyReceiver();
IntentFilter filter = new IntentFilter();
filter.addAction("android.intent.action.MY_BROADCAST");
registerReceiver(receiver, filter);
//在组件销毁时,反注册BroadcastReciever
@Override
protected void onDestroy() {
super.onDestroy();
unregisterReceiver(receiver);
}
相关参考:
Android broadcastReciever相关 - Lain丶T的博客 - 博客频道 - CSDN.NET
Android开发之BroadcastReceiver详解 - Android移动开发技术文章_手机开发 - 红黑联盟
基础总结篇之五:BroadcastReceiver应用详解 - Scott Liu - 博客频道 - CSDN.NET
生命周期非常短,在接受到广播时创建,onRecieve( … )方法执行完后销毁;
10s内onRecieve(…)方法未执行完,会出现ANR错误;
BroadcastReciever简单用法示例:
//发送广播
Intent intent = new Intent( xxx.this, xxx)
sendBraodcast( intent );
注:
1.可以为intent添加数据
2.可以不使用显式Intent,而是使用隐式设置目标,通过对应BroadcastReciever的<intent-filter>过滤来命中目标
例如:intent.setAction( "xxxx.xxx.xxx");
//自定义BroadcastReciever
public class TestReciever extends BroadcastReciever {
public void onRevice( Context context, Intent intent ){
//处理逻辑,可从intent中获取所传递数据
}
}
1.静态注册
//BroadcastReciever 在AndroidManifest.xml文件中的注册
//可以不设置<intent-filter>,但是那样貌似就无法通过隐式Intent来命中该Reciver
<reciever android:name=".xxxx.TestReciever" >
<intent-filter>
..........
</intent-filter>
</reciever>
2.Activity或Service中动态注册
注意:如果组件销毁时,没有事先反注册,会抛出异常
//注册
MyReceiver receiver = new MyReceiver();
IntentFilter filter = new IntentFilter();
filter.addAction("android.intent.action.MY_BROADCAST");
registerReceiver(receiver, filter);
//在组件销毁时,反注册BroadcastReciever
@Override
protected void onDestroy() {
super.onDestroy();
unregisterReceiver(receiver);
}
相关参考:
Android broadcastReciever相关 - Lain丶T的博客 - 博客频道 - CSDN.NET
Android开发之BroadcastReceiver详解 - Android移动开发技术文章_手机开发 - 红黑联盟
基础总结篇之五:BroadcastReceiver应用详解 - Scott Liu - 博客频道 - CSDN.NET
相关文章推荐
- AjaxPanel自定义控件实现页面无刷新数据交互(做了个示例程序, 效果确实比较Cool, 用法非常简单! )(示例代码下载)
- 常用的JS与XML结合用法 简单示例
- PHP设计模式之委托模式定义与用法简单示例
- 关于集合以及集合的简单用法示例
- Python random模块用法解析及简单示例
- php中DOMDocument简单用法示例代码(XML创建、添加、删除、修改)
- Yii2中关联查询简单用法示例
- Hibernate(1)Hibernate简介和简单示例,了解Hibernate事务回滚用法
- Timer定时器简单用法(Android中示例)
- Android开发中CheckBox的简单用法示例
- DecimalFormat类简单用法示例
- List中FindAll用法的一些简单示例并与where的区别
- Python网络编程之TCP套接字简单用法示例
- Java中的Final关键字用法汇总及简单示例
- extern 用法简单示例
- Python中str.join()简单用法示例
- log4j基本用法及简单配置示例
- jQuery中复合选择器简单用法示例
- UIScrollView的基本用法和简单示例
- jQuery滚动条美化插件nicescroll简单用法示例