代码中解析短信——BroadCastReceiver应用举例
来源:互联网 发布:乐高ev3编程软件教育版 编辑:程序博客网 时间:2024/05/16 10:58
BroadCastReceiver是四大组件之一,用处自不比说,用个小demo举例说明。
系统创建广播时,把短信存放到一个数组,然后把数据以pdus为key存入bundle,再把bundle存入intent,注册一个广播接收者,
manifest注册如下
<receiver android:name=".SmSreceiver"> <intent-filter android:priority="214748364"> <action android:name="android.provider.Telephony.SMS_RECEIVED"/> </intent-filter> </receiver>
写一个SmsBroadcastReceiver继承BroadcastReceiver,解析短信内容
public class SmSreceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { Bundle extras = intent.getExtras(); Object [] objs = (Object[]) extras.get("pdus"); for (Object obj:objs){ byte[] smsBytes= (byte[]) obj; SmsMessage msg = SmsMessage.createFromPdu(smsBytes); String body = msg.getMessageBody();//此即为短信内容 } }}
拨打电话,开机,电池电量低,网络断开,屏幕解锁,应用安装卸载,SD卡装载卸载 都会发出广播,当一条广播被发送出来时,系统是在所有清单文件中遍历,通过匹配意图过滤器找到能接收这条广播的广播接收者
广播分两种类型,
1.无需广播,所有跟广播的intent匹配都可以接受度奥该广播,没有先后顺序,
2、有序广播,按照广播接受者的优先级决定接收的先后顺序,优先级高德可以向优先级低的传递信息。可以被拦截…………
两种注册方式区别:
1、动态注册不是常驻型广播,广播接受者随activity生命周期。onDestroy方法里需要unregister,静态注册是常驻型,即使程序关闭,如果有广播传来,也会被系统自动运行。
2、广播为有序广播时,同优先级的广播接受者,动态优于静态
3、同优先级的同类广播接受者,先扫描的优先于后扫描的,先注册的优先于后注册的。
0 0
- 代码中解析短信——BroadCastReceiver应用举例
- android BroadcastReceiver应用举例
- Android BroadcastReceiver应用举例
- android接收和发送短信代码-BroadcastReceiver应用
- Android——BroadcastReceiver 广播 短信拦截
- Android实践—BroadcastReceiver应用于短信监控
- Service BroadcastReceiver备份短信的应用
- Makefile中$@应用举例
- 【Android】短信应用——短信发送
- 【Android】短信应用——短信截获
- 【Android】短信应用——短信截获
- 【Android】短信应用——短信截获
- 【Android】短信应用——短信截获
- 【Android】短信应用——短信截获
- Android短信监听(一)——利用BroadcastReceiver实现短信监听
- Android实训案例(六)——四大组件之一BroadcastReceiver的基本使用,拨号,短信,SD卡,开机,应用安装卸载监听
- BroadcastReceiver最全实例——静态、动态、系统(监听短信、网络连接状态、SD卡、应用安装……)
- Android实训案例(六)——四大组件之一BroadcastReceiver的基本使用,拨号,短信,SD卡,开机,应用安装卸载监听
- mongodb常用指令
- 组合数
- HDU 5572 (平面几何)
- RunLoop个人学习
- Python画柱状统计图
- 代码中解析短信——BroadCastReceiver应用举例
- 4、线程安全_Lock
- poj1363Rails
- android JSON数据解析
- memcache统计同一数据搜索次数,设置缓存
- Maven使用详解
- 寻找最大的列号
- win10中 “windbg+vmware+win10双机调试” 设置
- 深入理解RunLoop