博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android85 短信防火墙
阅读量:7061 次
发布时间:2019-06-28

本文共 1852 字,大约阅读时间需要 6 分钟。

系统收到短信是有广播的,广播中包含了短信的号码和内容  ###短信防火墙* 系统发送短信广播时,是怎么把短信内容存入广播的,我们就只能怎么取出来* 如果短信过长,那么发送时会拆分成多条短信发送,那么短信广播中就会包含多条短信* 4.0之后,广播接收者所在进程如果从来没启动过,那么广播接收者不会生效* 4.0之后,如果系统自动关闭广播接收者所在进程,在广播中的action跟该广播接收者的action匹配时,系统会启动该广播接收者所在的进程,但是如果是用户手动关闭该进程,那么该进程会进入冻结状态,再也不会启动了,直到用户下一次手动启动该进程###广播的分类#####无序广播* 所有与广播中的action匹配的广播接收者都可以收到这条广播,并且是没有先后顺序,视为同时收到#####有序广播* 所有与广播中的action匹配的广播接收者都可以收到这条广播,但是是有先后顺序的,按照广播接收者的优先级排序
package com.itheima.smslanjie;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.os.Bundle;import android.telephony.SmsManager;import android.telephony.SmsMessage;public class SmsReceiver extends BroadcastReceiver {    @Override    public void onReceive(Context context, Intent intent) {        //拿到短信的信息        //短信内容封装在intent中,广播的数据是用Intent传递的        Bundle bundle = intent.getExtras();        //以pdus为键,取出一个object数组,数组中的每一个元素都是一条短信        Object[] objects = (Object[]) bundle.get("pdus");        //拿到广播中的所有短信        for (Object object : objects) {            //通过pdu来构造短信,SmsMessage表示短信对象。            SmsMessage sms = SmsMessage.createFromPdu((byte[])object);            if(sms.getOriginatingAddress().equals("138438")){
//通过地址拦截 //阻止其他广播接收者收到这条广播,则短信应用就收不到短信了,短信应用也是通过系统发送的广播收到短信的, abortBroadcast();// SmsManager.getDefault().sendTextMessage(sms.getOriginatingAddress(), null, "你是个好人", null, null); System.out.println(sms.getMessageBody()); System.out.println(sms.getOriginatingAddress()); }// System.out.println(sms.getMessageBody()); } }}/* 清单文件:
防火墙优先级高于短信应用则广播接受者优先于短信应用接受短信广播
收到Telephony.SMS_RECEIVED这个广播后调用SmsReceiver的方法
添加权限
*/

 

本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/4947572.html,如需转载请自行联系原作者
你可能感兴趣的文章
用VMware克隆CentOS7后网卡静态配置
查看>>
input 测试工具2 mi 监听多个input
查看>>
Android 硬件加速问题
查看>>
Eclipse JEE中Server Options追踪
查看>>
关联规则Apriori算法
查看>>
Zabbix监控交换机,防火墙端口流量
查看>>
C++ 精度
查看>>
61、Heartbeat V1基于NFS共享存储的WEB高可用实战
查看>>
泛型数组问题
查看>>
Cisco HSRP排错
查看>>
Linux下查看tomcat连接数
查看>>
java 对象池
查看>>
成长中必须知道的20个故事
查看>>
aix下设置自动启动、关闭oracle
查看>>
Ocs 2007 迁移到 Lync的一些注意事项
查看>>
我的友情链接
查看>>
bash的字符处理工具及bash特性
查看>>
Input Director 一套键盘鼠标同时控制多台电脑
查看>>
Failure [INSTALL_FAILED_INVALID_APK]
查看>>
java 写入文件
查看>>