广播二
来源:互联网 发布:linux tftpd 编辑:程序博客网 时间:2024/04/26 23:00
有序广播:
普通广播不能中断,所有监听这个广播的都能收到信息。有序广播可以中断优点:1.按优先级的不同,优先Receiver可对数据进行处理,并传给下一个Receiver设置优先级,在<intent-filter>节点中添加android:priority属性(取值范围:-1000到1000) 2.通过abortBroadcast可终止广播的传播缺点:效率低优先接收到Broadcast的Receiver可通过setResultExtras(Bundle)方法将处理结果存入Broadcast中获取短信内容系统广播:收到短信:android.provider.Telephony.SMS_RECEIVED权限<uses-permission android:name="android.permission.RECEIVE_SMS"/>获取短信内容:1.构建短信对象arrayObject[] objArray=(Object[])bundle.get("puds");2.根据收到的对象长度创建array长度SmsMessage[] message=new SmsMessage[objArray.length];3.把每一个单元的pdu格式的短信转换成SmsMessage对象for(int i=0;i<objArray.length;i++){messages[i]=SmsMessage.createFromPdu((byte[])objArray[i]);}4.获取短信的内容和对方的手机号码for(SmsMessage s:sms){String msg=s.getDisplayMessageBody();String source=s.getDisplayOriginatingAddress();}
---------获取短信内容
package com.example.works_msm;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.os.Bundle;import android.telephony.SmsMessage;import android.util.Log;/** * Created by Administrator on 2017/7/13 0013. */public class MySMS extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if ("android.provider.Telephony.SMS_RECEIVED".equals(intent.getAction())) { Log.i("test","收到短信了"); Bundle bundle=intent.getExtras(); Object object[]= (Object[]) bundle.get("pdus"); SmsMessage smsMessage[]=new SmsMessage[object.length]; for (int i = 0; i < object.length; i++) { smsMessage[i]=SmsMessage.createFromPdu((byte[])object[i]); } for (SmsMessage message : smsMessage) { String address=message.getOriginatingAddress(); String body=message.getDisplayMessageBody(); Log.i("test",address+":"+body); } } }}
阅读全文
0 0
- 广播二
- App Widget (二) 广播
- android 广播机制二
- 广播机制(二)
- 广播与服务二
- 广播与服务二
- Android 广播机制(二
- android 广播(二)
- (二)UDP广播
- Android广播机制二
- Android广播之发送自定义广播+本地广播(二)
- 【Android】广播大全(二)
- android广播事件处理二
- 广播机制 之二
- 屏幕广播的实现(二)
- day08 广播与服务(二)
- Android 广播接收器BroadcastReceiver(二)
- 广播与服务总结二
- Java 反射
- NYOJ士兵杀敌(二) 单点值修改加区域求和
- javaScript--算术内置对象
- 多重for循环打印菱形
- Introduction to OpenCV Tracker
- 广播二
- Java基本数据类型&引用类型总结
- Linux服务器开发一(基础)
- Java-synchronized的使用方法
- 数据库SQL优化大总结之 百万级数据库优化方案
- Java输出空心菱形
- 产品经理对原型和PRD的认知到达这个水准,才能称之为合格的PM
- HashMap和HashTable的区别
- 结构伪类选择器