25短信指令的广播接受者

这里创建一个短信广播接受者,并让他的优先级最大,设置他的动作为:接收短信(需要添加权限)

 <receiver android:name="com.ustc.mobilemanager.receiver.SMSReceiver" >
            <intent-filter android:priority="1000">
                <action android:name="android.provider.Telephony.SMS_RECEIVED" />
            </intent-filter>
        </receiver>
 <uses-permission android:name="android.permission.RECEIVE_SMS"/>
package com.ustc.mobilemanager.receiver;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.telephony.SmsMessage;
import android.util.Log;

public class SMSReceiver extends BroadcastReceiver {

	private static final String TAG = "SMSReceiver";

	@Override
	public void onReceive(Context context, Intent intent) {
		//写接受短信的代码

		Object[] objs = (Object[]) intent.getExtras().get("pdus");

		for (Object b : objs) {
			//具体的某一条短信
			SmsMessage sms = SmsMessage.createFromPdu((byte[]) b);
			//发送者
			String sender = sms.getOriginatingAddress();
			//短信内容
			String body = sms.getMessageBody();
			if ("#*location*#".equals(body)) {
				//得到手机的GPS
				Log.i(TAG, "得到手机的GPS");
				//把这个广播终止掉
				abortBroadcast();
			}else if("#*alarm*#".equals(body)){
				Log.i(TAG, "播放报警音乐");
				abortBroadcast();
			}else if ("#*wipedata*#".equals(body)) {
				Log.i(TAG, "远程销毁数据");
				abortBroadcast();
			}else if ("#*lockscreen*#".equals(body)) {
				Log.i(TAG, "远程锁屏");
				abortBroadcast();
			}
		}

	}

}

时间: 2024-10-20 11:17:44

25短信指令的广播接受者的相关文章

[android] 手机卫士接收短信指令执行相应操作

通过广播接收者,接收到短信,对短信内容进行判断,如果为我们指定的值就执行相应的操作 如果短信内容是”#*location*#” 就执行,获取手机位置 如果短信内容是”#*alarm*#” 就执行,播放报警音乐 如果短信内容是”#*wipedata*#” 就执行,远程清除数据 如果短信内容是”#*lockscrreen*#” 就执行,远程锁屏 把短信的优先级定义成1000 使用模拟器发送短息的时候,会自动给发送号码拼接上155xxxx等,判断时候会不准确,使用String对象的contains()

[android] 手机卫士手机实现短信指令获取位置

获取位置  新建一个service的包 新建一个GPSService类继承系统的Service类 清单文件中注册一下 重写onCreate()方法,服务创建的时候回调 重写onDestroy()方法,服务销毁的时候回调 把上一节的代码拿到这个地方来 得到用户移动后的最后一次的位置,保存到SP中 转换标准坐标为火星坐标,数据库文件放到assets目录下,把ModifyOffset.java放在service包下面 获取ModifyOffset对象,通过ModifyOffset.getInstanc

广播接受者拦截短信和播出电话

需要接受信息和播出电话的权限 广播接受者需要在配置清单里面注册,并且可以设置优先级和接收者关心的事件 广播拦截下来之后可以进行传递的信息的修改或者直接终止掉广播,终止了之后就相当于没有这个事情发生 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package=&

android85 短信防火墙

系统收到短信是有广播的,广播中包含了短信的号码和内容 ###短信防火墙 * 系统发送短信广播时,是怎么把短信内容存入广播的,我们就只能怎么取出来 * 如果短信过长,那么发送时会拆分成多条短信发送,那么短信广播中就会包含多条短信 * 4.0之后,广播接收者所在进程如果从来没启动过,那么广播接收者不会生效 * 4.0之后,如果系统自动关闭广播接收者所在进程,在广播中的action跟该广播接收者的action匹配时,系统会启动该广播接收者所在的进程,但是如果是用户手动关闭该进程, 那么该进程会进入冻结

Android手机使用广播监听手机收到的短信

我们使用的Android手机在收到短信的时候会发出一条系统广播.该条广播中存放着接收到的短信的详细信息.本文将详细介绍如何通过动态注册广播来监听短信. 注册广播有两种方式,一种是动态注册,另一种是静态注册.动态注册,顾名思义就是在程序运行时注册的,需要用到广播的时候就注册,用完即销毁.静态注是在AndroidManifest.xml中注册的,在<application>中使用<receiver>标签注册. 那么如何创建一个监听短信的广播接收器呢,其实只需要新建一个类,让这个类继承B

(十六)短信广播接收

一.需求:当接收到短信到来的广播的时候,获得短信的内容和发件人 二.SmsReceiver.java文件如下所示: package com.example.smslistenerreiceiver; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.telephony.SmsMessage; import a

wavecom短信猫常用AT命令

一.一般命令 1. AT+CGMI 给出模块厂商的标识. 2. AT+CGMM 获得模块标识.这个命令用来得到支持的频带 (GSM 900,DCS 1800 或PCS 1900).当模块有多频带时,回应可能是不同频带的结合. 3. AT+CGMR 获得改订的软件版本. 4. AT+CGSN 获得GSM模块的IMEI(国际移动设备标识)序列号. 5. AT+CSCS 选择TE特征设定.这个命令报告TE用的是哪个状态设定上的ME.ME于是可以转换 每一个输入的或显示的字母.这个是用来发送.读取或者撰

java 学习第13课,android 实现发送短信的功能

1. 界面布局 界面代码: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView andro

金笛山洪短信预警解决方案

我国是山洪灾害极其频繁严重的国家,每年汛期由降雨引发的山洪.泥石流.滑坡都造成了大量人员伤亡和财产损失,全国2100多个县级行政区中有1500多个在山区.根据相关统计,有7400万人不同程度地受到山洪.泥石流.滑坡灾害的威胁. 山洪灾害一般是在一定强度或持续的降雨和特殊的地形地质条件下发生的,有突发.易发.多发.破坏性大.防御困难的鲜明特点,往往会对局部地区造成毁灭性灾害. 解决山洪灾害有两种办法:一是治,采用修水库,建堤防等工程措施:二是防,在灾害即将发生时及时撤离人员,也就是洪涝灾害的预警.