Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> 淺析Android手機衛士接收短信指令執行相應操作

淺析Android手機衛士接收短信指令執行相應操作

編輯:關於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;
@Override
public 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手機衛士接收短信指令執行相應操作的相關知識,希望對大家以上幫助!

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved