短信防火墙
来源:互联网 发布:淘宝宝贝下架后在哪里 编辑:程序博客网 时间:2024/06/01 09:32
文件清单:
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="smsbroadcast.workharder.com.SmsBroadcast" > <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme" > <activity android:name=".MainActivity" android:label="@string/app_name" android:theme="@style/AppTheme.NoActionBar" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <receiver android:name=".SmsBroadcast" > <intent-filter android:priority="1000"> <action android:name="android.provider.Telephony.SMS_RECEIVED"/> </intent-filter> </receiver> </application> <uses-permission android:name="android.permission.SEND_SMS"/> <uses-permission android:name="android.permission.RECEIVE_SMS"/></manifest>
一、界面主代码:package smsbroadcast.workharder.com.SmsBroadcast;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.os.Bundle;import android.telephony.SmsManager;import android.telephony.SmsMessage;/** * Created by Administrator on 2016-03-13. * 数据如何存取,就如何取出,因为短信的存储比较麻烦,那么取出数据也很麻烦 * 4.0之后,如果广播进程被系统自动关闭,系统再次调用广播时,会自动启用,但如果是用户关闭广播进程, * 那么之后广播进程不会再被再启动,知道用户下一次手动启动该进程; */public class SmsBroadcast extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { //短信封装在bundle对象中,那么久从intent取出 Bundle bundle=intent.getExtras(); //以puds(协议数据单元)为键,取出数组中的每一个元素都是一条短信 Object[] objects= (Object[]) bundle.get("pdus"); for(Object object:objects){ SmsMessage sms=SmsMessage.createFromPdu((byte[]) object); //系统发送短信广播时,是怎么把短信内容存入广播的,我们只能怎么取出来,如果短信 //过长,那么发送时会拆分多条短信发送,那么短信广播中就会包含多条短信 System.out.print(sms.getOriginatingAddress()); System.out.print(sms.getMessageBody()); if(sms.getOriginatingAddress().equals("138438")){ //阻止任何其它广播接收者收到这条广播,但前提,优先级必须高于其它广播的优先级,才能先收到广播-1000---1000 abortBroadcast(); //4.0之后,如果广播接收者未启动过一次,那么是不会生效的,一定要被启动过,先安装,后删掉入口Activity的IntentFilter,再次安装即可 SmsManager.getDefault().sendTextMessage(sms.getOriginatingAddress(),null,"你是好人",null,null); } } }}
0 0
- 短信防火墙
- 短信防火墙
- 短信防火墙
- Android_07_短信防火墙
- broadcast receives,短信防火墙
- Android初级教程短信防火墙
- Android Broadcast 短信防火墙
- 38.android广播-短信防火墙
- 防火墙
- 防火墙
- 防火墙
- 防火墙
- 防火墙
- 防火墙
- 防火墙
- 防火墙
- 防火墙
- 防火墙
- Xcode build解密
- 判断输入的是否是整数
- STM32为什么必须先配置时钟再配置GPIO
- Prime Palindromes--回文+素数判断
- java设计模式——结构型之门面模式
- 短信防火墙
- 第三周项目3:输出星号图
- 链式队列
- [C3P0]XML文件配置及使用
- c语言中逗号运算符和逗号表达式
- 常见排序算法的Java实现
- 受限玻尔兹曼机RBM实现及能量值思考——matlab实现
- hadoop集群搭建攻略
- 在CentOS上安装Java环境详解