http://v.youku.com/v_show/id_XNzE1MjQ0ODYw.html
视频:
GPS+STM32+GSM
我做的这个,因为时间和能力问题,所以还有很多不足,希望发布出来对需要的人有帮助!
如果加上GPRS 手机百度地图 超过一定范围报警就完美了
安卓手机短信调用代码:
package com.wjh.navigator;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.SmsMessage;
import android.widget.Toast;
public class SMS_Receiver extends BroadcastReceiver {
String receiveFlag = "android.provider.Telephony.SMS_RECEIVED";
String result[] = new String[30];
String msgString="";
String lat;
String lon;
double latitude = 0;
double longitude = 0;
public void onReceive(Context context, Intent intent) {
SmsMessage[] msg = null;
if (intent.getAction().equals(receiveFlag)) {
Bundle bundle = intent.getExtras();
if (bundle != null) {
Object[] pdusObj = (Object[]) bundle.get("pdus");
msg = new SmsMessage[pdusObj.length];
for (int i = 0; i < pdusObj.length; i++) {
msg
= SmsMessage.createFromPdu((byte[]) pdusObj);
msgString = msg.getDisplayMessageBody();
}
}
result = msgString.split("E");
for (int i = 1; i < result.length; i++) {
lat = result[i-1];
lon = result;
}
latitude = Double.parseDouble(lat);
longitude = Double.parseDouble(lon);
}
intent = new Intent();
intent.putExtra("latitude", latitude);
intent.putExtra("longitude", longitude );
intent.setClass(context, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
}
}
---------------------------------
AT+CMGR,用于读取短信,比如发送:AT+CMGR=1,则可以读取 SIM 卡存储在位置 1
的短信。
你试试这个命令,通过读出的内容匹配设置的内容,然后报警,是这意思么?
一周热门 更多>