android组件之一BroadCastReceiver
来源:互联网 发布:淘宝网兼职是真的吗 编辑:程序博客网 时间:2024/06/01 15:41
在 Android 里面有各种各样的广播,比如电池的使用状态,电话的接收和短信的接收,开机与关机等等都会产生一个广播,应用程序开发者也可以监听这些广播并做出程序逻辑的处理。
2.BroadCastReceiver的作用
例如当开机完成后系统会产生一条广播,接收到这条广播就能实现开机启动服务的功能;当网络状态改变时系统会产生一条广播,接收到这条广播就能及时地做出提示和保存数据等操作;当电池电量改变时,系统会产生一条广播,接收到这条广播就能在电量低时告知用户及时保存进度,等等。
3.BroadCastReceiver的注册方式(用电话拨号器举例:)
第一种方式(静态注册):
1)第一步
public class CallReceiver extends BroadcastReceiver {
//广播接收者接收到广播是,次方法调用
@Override
public void onReceive(Context arg0, Intent arg1) {
// System.out.println("打电话来来");
//获取打电话广播中携带的号码
String number = getResultData();
SharedPreferences sp = arg0.getSharedPreferences("number", arg0.MODE_PRIVATE);
String ipNumber = sp.getString("ipNumber", "");
//把新的号码放入广播中
setResultData(ipNumber + number);
}
}
2)第二步
系统注册:在 AndroidManifest.xml 中注册
<receiver android:name="cn.miwa.ipdial.CallReceiver">
<intent-filter >
<!-- 指定要用到系统的广播 -->
<action android:name="android.intent.action.NEW_OUTGOING_CALL"/>
</intent-filter>
</receiver>
<!-- 要用到的权限 -->
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
第二种方式(动态注册):
// 广播接收者 - 广播的接收
private BroadcastReceiver callReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// 相关处理,如收短信,监听电量变化信息
}
};
代码中注册:
IntentFilter intentFilter = new IntentFilter( "android.intent.action.NEW_OUTGOING_CALL " );
registerReceiver( callReceiver , intentFilter);
- android组件之一BroadCastReceiver
- Android 四大组件之一 BroadcastReceiver
- Android四大组件之一:BroadcastReceiver
- Android四大组件之一:BroadcastReceiver
- Android 四大组件之一BroadcastReceiver
- 【Android】四大组件之一:BroadcastReceiver
- android 四大组件之一 BroadcastReceiver 广播接收者
- Android 四大组件之一:BroadcastReceiver广播机制
- 深入理解Android四大组件之一BroadcastReceiver
- BroadcastReceiver简单总结(android四大组件之一)
- Android四大组件之一 广播接收者 BroadcastReceiver
- Android四大组件之一BroadcastReceiver简析
- Android四大组件之一---BroadcastReceiver全面解析
- Android四大组件之一 BroadcastReceiver解析
- BroadcastReceiver-四大组件之一
- 四大组件之一:BroadcastReceiver
- Android四大组件之一:BroadcastReceiver应用详解(带实例)
- android组件之一BroadCastReceiver 短息拦截器
- xcode7.0请求变更解决方案
- 指针辨析:悬垂指针、哑指针、野指针、智能指针
- ZOJ2110/HUD1010骨头的诱惑(HDUAC2,ZOJWA但是不知道为什么。。。)
- iOS面试整理
- C语言unlink()函数:删除文件
- android组件之一BroadCastReceiver
- Disk IO especially SSD optimization step by step share
- [ecshop 资料]ecshop积分充值可充值等级积分余消费积分教程 pay_points
- Android总结篇系列:Android广播机制
- 百度地图api出现 leaked ServiceConnection com.baidu.location.LocationClient错误
- HTTP消息头信息
- 让 Parse Double 漏洞无处藏身,工程师们必备神器!
- 限制SSH登录
- [IOS开发]自定义使用AVCaptureSession 拍照,摄像,载图总结