浅析Android手机卫士接收短信指令执行相应操作

推荐阅读:

浅析Android手机卫士sim卡绑定

深入浅析Android手机卫士保存密码时进行md5加密

详解Android 手机卫士设置向导页面

浅析Android手机卫士关闭自动更新

浅析Android手机卫士自定义控件的属性

浅析Android手机卫士读取联系人

通过广播接收者,接收到短信,对短信内容进行判断,如果为我们指定的值就执行相应的操作。

如果短信内容是”#*location*#” 就执行,获取手机位置

如果短信内容是”#*alarm*#” 就执行,播放报警音乐

如果短信内容是”#*wipedata*#” 就执行,远程清除数据

如果短信内容是”#*lockscrreen*#” 就执行,远程锁屏

把短信的优先级定义成1000

使用模拟器发送短息的时候,会自动给发送号码拼接上155xxxx等,判断时候会不准确,使用String对象的contains()方法判断是否包含我们保存的安全号码

在res目录下创建raw文件夹,把音乐文件放进去

调用MediaPlayer.create()方法,得到MediaPlayer对象,参数:上下文,资源文件

注意资源文件R所在的包,不要导成系统下的

调用MediaPlayer对象的start()方法

此时播放的警报静音都不管用,因为目标手机如果正在听音乐调的是多媒体是管用的,否则不管用

SmsReceiver.java

package com.qingguow.mobilesafe.receiver;import com.qingguow.mobilesafe.R;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.content.SharedPreferences;import android.media.MediaPlayer;import android.telephony.SmsMessage;import android.widget.Toast;public class SmsReceiver extends BroadcastReceiver {private SharedPreferences sp;@Overridepublic void onReceive(Context context, Intent intent) {sp=context.getSharedPreferences("config", Context.MODE_PRIVATE);//获取短信内容Object[] objs=(Object[]) intent.getExtras().get("pdus");for(Object obj:objs){SmsMessage sms=SmsMessage.createFromPdu((byte[])obj);String body=sms.getMessageBody();String sender=sms.getOriginatingAddress();String secSender=sp.getString("secphone", "");//判断是安全号码的短信if(secSender.equals(sender)){switch (body) {case "#*alarm*#"://发送报警音乐//Toast.makeText(context, "播放报警音乐", 1).show();MediaPlayer mp=MediaPlayer.create(context, R.raw.alarm);mp.start();abortBroadcast();break;default:break;}}}}}

以上所述是小编给大家介绍的Android手机卫士接收短信指令执行相应操作的相关知识,希望对大家以上帮助!

分之百的把自己推销给自己。

浅析Android手机卫士接收短信指令执行相应操作

相关文章:

你感兴趣的文章:

标签云: