基于Android的位置实时监控系统的设计与实现
2.3 程序实现
本文引用地址:https://www.eepw.com.cn/article/273085.htm 一是定位功能的实现。充分利用Android智能手机内置GPS定位模块,基于Eclipse开发平台通过程序的调用,实现定位功能,手机运行结果如图4所示。其实现代码如下:
/**
* 将获得的位置信息显示出来
* @param location
*/
private void setLocation(Location location){
if (location != null) {
String latitudeStr = Double.toString(location.getLatitude());//经度
String longitudeStr = Double.toString(location.getLongitude());//纬度
String altitudeStr = Double.toString(location.getAltitude());//海拔
// 获取当前时间
SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss",Locale.CHINA);
String dateStr = sDateFormat.format(new java.util.Date());
gpsTime.setText(dateStr);
if (latitudeStr != null && !latitudeStr.equals("")) {
latitude.setText(latitudeStr);
}
if (longitudeStr != null && !longitudeStr.equals("")) {
longitude.setText(longitudeStr);
}
if (altitudeStr != null && !altitudeStr.equals("")) {
altitude.setText(altitudeStr);
}
} else {
Log.v("location", "location为空");
}
}
二是经纬度信息发送功能的实现。根据事先设置好的监控端手机号码,按照发送频率(时间间隔),将经纬度发送到监控端。其实现代码如下:
/**
* 发送短信
* @param smsContent 短信内容
*/
private void sendSMS(String smsContent){
//获取短信管理器
SmsManager smsManager = SmsManager.getDefault();
//拆分短信内容
List divideContents = smsManager.divideMessage(smsContent);
if (curPhoneNum == null || curPhoneNum.equals("")) {
new AlertDialog.Builder(MainActivity.this).setTitle("警告").setMessage("您还未设置目标电话号码").create().show();
return;
}
//发送短信
for (String text : divideContents) {
smsManager.sendTextMessage(curPhoneNum, null, text, null, null);
}
}
评论