



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Day21广播机作者邮箱Day21广播机作者邮箱BroadcastReceiver简BroadcastReceiver创BroadcastReceiver对象 需要继承 android.content.BroadcastReceiver,onReceive 方法。publicclassMyReceiver2extendsBroadcastReceiverpublicvoidonReceive(Contextent)/ TODO Auto-generated method stub Toast.makeText(context接收到广播就下课,onReceive方法内, 可以获取随广播而来的 e
2、nt 中的数据,这非常重要,就像在创建完 的 BroadcastReceiver之后,还不能够使它进入工作状态, 需要为它注BroadcastReceiver 就像一个缺少选台按钮的收Baaecer 用接收播组用组与组之进通以跨用程序传如作统池量低发一广播样的序面以去个播,可以关闭程序里面比较耗电的功能,提示用户注意保存进度什么的,还如其它安装新应用等,还有通用例动特线,件等.Android 中的广播机制设计的非常出色,很多事情原本需要开发者亲自操作的,现在只Android BroadcastReceiver三、 静特点三、 静特点: 当程序退出后,广播依然存在,直至应用被卸载是在Androi
3、dManifest.xml 文件中配置的receiverent-actionent.action.MY_BROADCASTcategoryent.category.DEFAULTent-是否只接收本应用的动都继承了ContextWrapper,所以可以直接调用。在实际应用中,在Activity或Service中了一个BroadcastReceiver,当这个Activity 或Service 被销毁时如果没有解除mbcr=newMyBroadcastReceiver(); entFilter filter = newregisterReceiver(mbcr, filter);/解mbcr =
4、 protectedvoidonDestroy() 四、 广播的发4.1发送标准广4.2四、 广播的发4.1发送标准广4.2发送有序广ent=/发送有序广播。 参数一:意图对象 参数二:权限。是否需要接受者需要选取才可/以ent,/创建意图对象,并指明actionactionent=广播的发送和接收是跨进程的,一个app 发送的广播,其他的app 限和问题来了/null0 五、 广播的五、 广播的分广播,接收者相互之间不会有影响。对于这种广播,接收者无法终止广播,即无法 其他六、 实战运用内public六、 实战运用内publicclassSmsRecevierextendsBroadcast
5、Receiver publicvoidonReceive(Contextent)/TODOAuto-generatedmethodToast.makeText(context有短消息来了primarydatauserion(PDUS主数据用户站Objectpdus=(Object)将pdusSmsMessagesmsMsgs=new循环遍历转换成SmsMessagefori=0;i smsMsgs.length;i+)ProtocolDataUnit(协议数据单元smsMsgsi=SmsMessage.createFromPdu(byte) 使用方式android:priority每个广播接收
6、者是有序接收广播,如果中间使用 abortBroadcast()方每个接收者接收的 ent都是从发送方发送的同一个 ent对象每个接收者都是孤立的,注意:1、静态 app一旦安装在系统,则可以接收到指定的广播。不管这个app有没有启动。 2、动态 的广播接收者只有在 完成后才能接收到广播,当 他的组件销毁的时候,广播接收者也应该解除 。StringStringphoneNumber=null; String data = null;StringBuilderbuilder=new循环遍历从SmsMessagefor(SmsMessagesms:smsMsgs) phoneNumber=/获内d
7、ata= /每次拿到的内容存放到StringBuilder中,最后显示完整内Log.i(123号码Log.i(123内容/后续就终止接的逻自定义Notificationpat.Builder nb = neNotificationManagernm=(NotificationManager)contextnm.notify(2nb.build();静广receiverent-filter接收短消息的条件(频道actionent-得到系申请获取短消息的权限 七、 实战运用-七、 实战运用-读电如果 阅读 ,可能是全屏阅读,这个时候用户就看不到剩余的电量, 就可以 为他们提供电量的信息。要想做到这
8、一点, 需要接收一条电量变化的广播,然后获取百publicclassBatteryReceiverextendsBroadcastReceiver publicvoidonReceive(Contextent)/ TODO Auto-generated method stub String action =ifent.ACTION_BATTERY_CHANGED)当前电量(第一个参数当前的电量key值,第二个参数默认值levelExtra(BatteryManager.EXTRA_LEVEL,scaleExtra(BatteryManager.EXTRA_SCALE,percentlevel*
9、100scale; Log.i(123, 当前电量: + level);Log.i(123最大电量Log.i(123当前电量百分比关于状态的判断(是否在充电us =US,0); Log.i(123, sus:+sswitchus)caseUS_CHARGING:Log.i(123充电caseUS_DISCHARGING:Log.i(123放电caseUS_UNKNOWN:Log.i(123未知性能的参数(和Health有关healthExtra(BatteryManager.EXTRA_HEALTH,BatteryManager.BATTERY_HEALTH_GOOD性能switch(heal
10、th)caseLog.iLog.i(123电池温度过低caseBatteryManager.BATTERY_HEALTH_DEAD: Log.i(123, 电池坏掉了);caseBatteryManager.BATTERY_HEALTH_GOOD: Log.i(123, 电池健康);caseBatteryManager.BATTERY_HEALTH_OVER_VOLTAGE: Log.i(123, 电池电压过高);caseBatteryManager.BATTERY_HEALTH_OVERHEAT: Log.i(123, 电池温度过高);caseBatteryManager.BATTERY_H
11、EALTH_UNKNOWN: Log.i(123, 电池温度过低);caseBatteryManager.BATTERY_HEALTH_UNSPECIFIED_FAILURE: Log.i(123, 电池温度过低);动广播接收receiver2 = new BatteryReceiver(); entFilter filter = new/电池电entFilter filter2 = newregisterReceiver(receiver2, filter2);注意:在Activity销毁时应该注销广八、 实战运用开机广九、 实战运用八、 实战运用开机广九、 实战运用网络状在某些场合,比如用
12、户浏览网络信息时,网络突然断开, 要及时地提醒用户网络已 断开。要实现这个功能, 可以接收网络状态改变这样一条广播,当由连接状态变为断开状态时,系统就会发送一条广播, 接收到之后,再通过网络的状态做出相应的操作publicclassConnectivityReceiverextendsBroadcastReceiver publicvoidonReceive(Contextent)/TODOAuto-generatedmethod网络状态的ConnectivityManagercm=(ConnectivityManager)/ 处于活跃状态的网络信public classpleteReceiv
13、erextendsBroadcastReceiver publicvoidonReceive(Contextent)/TODOAuto-generatedmethod开机的广StringactionLog.i(123, /启动界ent2 = new开机完毕的条件 ent-filteraction十、 实战运用来电和去电十、 实战运用来电和去电信定义广播接收publicclassPhoneReceiverextendsBroadcastReceiver publicvoidonReceive(Contextent)/TODOAuto-generatedmethod/实现对应处Stringacti
14、onif /打StringphoneNumberNetworkInfoinfo=if(info!=null&info.isConnectedOrConnecting()/这时候网络处于里连接ok的状Stringnameinfo.getTypeName();Toast.makeText(contextname+正在连接或已连接, else/没有正常连接的Toast.makeText(context网络连接不正常,查看网络设置, 关于网络状态的条件 ent-filter网络连接发生变化的时候actionent-使用到了网络状态相关的API,所以需网络状态的权限 uses-Log.i(123, 打出
15、号码: + phoneNumber);elseundle/ key在StringcomingNumber=bundleLog.i(123, 来电的号码: + comingNumber);ephonyManagertm=ephonyManager)e=switche)E_IDLEToast.makeText(context, E_OFFHOOK:Toast.makeText(context, 正在接听E_RINGINGToast.makeText(context来电响铃, 广播接收receiverent-filter!-打的条件-action来电的条件actionent-加入权!-申请得到打信息的权限-uses-十一、 实战运用十一、 实战运用屏幕状publicclassScreenOnOffReceiverextendsBroadcastRe
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年进排气歧管项目合作计划书
- 2025至2030年中国油性油墨数据监测研究报告
- 《读书:目的和前提》教学设计 2024-2025学年统编版高中语文必修上册
- 1-2 《齐桓晋文之事》教学设计 2023-2024学年统编版高中语文必修下册
- 2025年黑龙江民族职业学院单招职业技能测试题库审定版
- 2025年电子油门踏板项目建议书
- 2025年甘肃省白银市单招职业适应性测试题库完整
- 黑龙江省佳木斯市三校联考2023-2024学年高二上学期1月期末考试地理试题(解析版)
- 2025至2030年中国无水磷酸氢钙数据监测研究报告
- 2025至2030年中国摩托车护膝数据监测研究报告
- 保安公司新项目进场方案(2篇)
- 《垃圾发电厂炉渣处理技术规范》
- 法律基础知识500题及参考答案(满分必刷)
- 环境空气气态污染物(SO2、NO2、O3、CO)连续自动监测系统安装验收技术规范(HJ 193-2013部分代替 HJ-T 193-2005)
- 《生活垃圾转运站技术规范+CJJT+47-2016》详细解读
- 总体国家安全观-创新引领10周年全文课件
- 鸟类知识科普课件
- 中国通用电气有限公司员工手册
- 自建房培训课件甘肃
- 闽教版四年级下册劳动教案
- 汽车电气设备构造与维修(高职版)全套教学课件
评论
0/150
提交评论