基于Android的位置實(shí)時(shí)監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
3.3 程序?qū)崿F(xiàn)
本文引用地址:http://m.butianyuan.cn/article/273085.htm一是接收發(fā)送過(guò)來(lái)的經(jīng)緯度信息。本設(shè)計(jì)為直觀顯示經(jīng)緯度信息,在加載地圖的同時(shí),顯示在“短信內(nèi)容:”部分。其接收功能實(shí)現(xiàn)代碼如下:
/**
* 監(jiān)聽(tīng)收到的短信
*/
private final class SmsObserver extends ContentObserver {
public SmsObserver(Handler handler) {
super(handler);
}
public void onChange(boolean selfChange) {
ContentResolver resolver = getContentResolver();
//查到發(fā)出的短信
Uri uri = Uri.parse("content://sms/inbox");
Cursor cursor = resolver.query(uri, new String[] { "address", "body" }, null, null, "_id desc limit 1");
if (cursor.moveToNext()) {
String address = cursor.getString(0);
if (address.equals("此處為被監(jiān)控對(duì)象的手機(jī)號(hào)碼")) {
String body = cursor.getString(1);
smsContent.setText(body);
SearchButtonProcess(body);
}
}
}
二是實(shí)現(xiàn)電子地圖上的位置顯示。僅僅有經(jīng)緯度信息,監(jiān)控者無(wú)法直觀地了解被監(jiān)控對(duì)象的方位。所以在監(jiān)控端軟件上,加載百度地圖實(shí)現(xiàn)被監(jiān)控對(duì)象的實(shí)時(shí)監(jiān)控,運(yùn)行結(jié)果如圖8所示。其實(shí)現(xiàn)代碼如下:
/**
* 對(duì)收到的地點(diǎn)發(fā)起搜索并顯示在地圖上
*
* @param v
*/
private void SearchButtonProcess(String smsContent) {
try {
// 逗號(hào)分隔過(guò)濾得到經(jīng)緯度字符串
String[] point = smsContent.split(",");
// 獲取到的字符串需要轉(zhuǎn)化成long,然后long值需要乘1e6后轉(zhuǎn)化為int
String latitudeStr = point[0];
String longitudeStr = point[1];
GeoPoint ptCenter = new GeoPoint((int)(Float.valueOf(latitudeStr)*1e6),
(int)(Float.valueOf(longitudeStr)*1e6));
// 反Geo搜索
mSearch.reverseGeocode(ptCenter);
} catch (Throwable e) {
Toast.makeText(MainActivity.this, "SearchButtonProcess Error", Toast.LENGTH_LONG).show();
}
4 系統(tǒng)測(cè)試結(jié)果
如果被監(jiān)控端和監(jiān)控端都采用Android手機(jī)平臺(tái),可以充分利用Android提供的豐富的接口,使系統(tǒng)具有更好的擴(kuò)展性和實(shí)用性。該系統(tǒng)進(jìn)一步改進(jìn)還可以實(shí)現(xiàn)拍照、截圖、標(biāo)注和查看軌跡等功能。
5 結(jié)束語(yǔ)
該系統(tǒng)結(jié)構(gòu)簡(jiǎn)單、功能明確,軟件界面方便美觀,設(shè)計(jì)完成后該系統(tǒng)在自己家庭中進(jìn)行試用。經(jīng)過(guò)實(shí)際生活中的運(yùn)用證明,該系統(tǒng)可對(duì)家中的老人或者孩子進(jìn)行位置的實(shí)時(shí)監(jiān)控,并根據(jù)其位置信息家庭成員可以判斷是否正常,及時(shí)打電話確保安全。此外在本系統(tǒng)的設(shè)計(jì)基礎(chǔ)上,添加LED的顯示模塊也可以應(yīng)用到城市公交當(dāng)中去,為乘客向?qū)到y(tǒng)(PIS,Passenger Information System)的建立提供了一些方法和思路。還可以通過(guò)司機(jī)的Android操作系統(tǒng)手機(jī),實(shí)現(xiàn)遠(yuǎn)程運(yùn)輸車(chē)輛的全程監(jiān)控,極大地降低成本。
評(píng)論