999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Android平臺的手機防盜與定位系統的研究與設計

2016-10-14 01:34:04王維李亞
價值工程 2016年5期

王維 李亞

摘要:目前智能手機的功能是越來越豐富,而且更多的功能也會被植入到手機之中。手機防盜也開始成為熱門研究領域。文章主要是以Android手機為例,研究并設計了一種非常簡單有效的手機防盜功能,能夠讓機主在丟失手機之后能夠快速定位到該機,以實現簡單的防盜功能。

Abstract: The function of the intelligent mobile phone is more and more rich, and more features will be implanted into the mobile phone. Phone anti-theft began to become a hot research field. This paper takes Android mobile phone as an example to research and design a kind of very simple and effective mobile phone anti-theft function. It can let owner to quickly locate the phone after losing it to realize a simple anti-theft function.

關鍵詞:Android;手機防盜;手機定位;GPS;Eclipse

Key words: Android;phone anti-theft;mobile phone location;GPS;Eclipse

中圖分類號:TP316 文獻標識碼:A 文章編號:1006-4311(2016)05-0226-04

0 引言

隨著科技的不斷進步和發展,智能手機已經普及開來,人們的生活也越來越離不開智能手機。智能手機里不僅保存了短信、通信錄,甚至還保存了用戶的銀行卡密碼、QQ聊天記錄等隱私數據。手機一旦丟失,往往會給用戶造成巨大的損失。針對上述問題和實際的需求,本文主要研究了基于Android平臺的手機防盜問題的基本解決方案。

1 Android手機關于手機防盜問題的簡析

1.1 Android系統的簡介 Android 是基于Linux內核的軟件平臺和操作系統,采用軟件堆層(software stack)的架構,主要分為上、中、下三個層次。其中,底層是基于Linux的核心基礎層,最上層為各公司用Java程序自主編寫應用軟件,函數庫Library和虛擬機Virtual Machine則分布在中間層。在用Android開發應用軟件時,首先要搭建Android開發環境,完善主體架構和各個層次及其功能,掌握各部分的配置屬性。Android共包含有Activity(活動)、Service(服務)和Broadcast Receiver(廣播)和ContentProvider(內容提供者)四個組件,但是并非所有Android系統都必須具備這四大組件。用于記錄和注冊所使用的各種組件的AndroidManifest.xml文件,其主要功能是為項目配置權限,因此在Android系統中發揮著至關重要的作用。當啟動一個Android程序時,為了避免系統報錯,須在AndroidManifest.xml 文件中對各組件逐一申明。

1.2 手機防盜與定位系統的邏輯流程(圖1)

1.3 應用程序開發環境的搭建 該開發環境是Windows操作系統下,由“JDK(Javadevelopment kit)+Eclipse +Android SDK(Softwaredevelopment kit)+ADT(Android development tools)”組成。由于Android開發主要是使用了JAVA語言,故必須包括JDK,JDK是整個Java編程系統的核心組件,它主導Java的運行環境、ava工具及Java 基礎類庫。Eclipse作為 Android 程序開發IDE(integrateddevelopment environment)來使用的;Android SDK 是由Google提供的完全開放源代碼的Android專屬軟件開發工具包,用來開發適用于Android平臺的第三方應用軟件。該開發工具包中有一個專用于程序設計的布局管理器,其布局方式非常靈活,常用布局形式有三種:線性布局、相對布局和絕對布局。另外,還有一個支持Android工程和工具的通用插件——ADT,安裝該插件后,系統的創建、運行和調試都會變得十分簡單。

2 防盜的核心設計

首先需要設置一個安全號碼,該號碼與本機號碼是不一樣的,但該號碼是整個防盜體系結構中的關鍵一環,當我們的手機丟失后,別人打開手機時換裝其他的手機卡,就會激活我們設置的安全號碼,手機會在后臺聯系到安全號碼,并向安全號碼發送各種信息,安全號碼也可以遠程發送相關信息來遙控被盜手機,如獲得被盜手機的具體位置,以及刪除手機所有的信息。只用通過安全號碼我們才能知道丟失的手機在哪個位置,以便于快速找到丟失的手機。設置安全號碼比較簡單,只是將號碼保存到SharedPreferences中即可。

2.1 綁定SIM卡的序列號 接下來要做的事就是綁定機主的SIM卡的序列號。每個手機卡SIM卡的序列號都是唯一的,之所以不綁定手機號碼是因為有些SIM卡里并沒有寫入手機號碼,比如移動卡和聯通卡。綁定SIM卡的原理很簡單,首先通過getSystemService(TELEPHONY_SERVICE),獲取TelephoneManager對象,然后通過該對象的getSimSerialNumber方法獲取SIM卡的序列號。獲取SIM卡序列號后我們將該序列號保存在SharedPreferences中即可。

以下代碼為綁定SIM卡的序列號的核心代碼:

void bindSIMSerialNumber(Context context){

// 獲得SharedPreferences 用來保存SIM的序列號

SharedPreferences sp = context.getSharedPreferences("config", MODE_PRIVATE);

String sim = sp.getString("sim", null);

if(sim==null){

//還沒有綁定SIM序列號

tm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);

sim = tm.getSimSerialNumber();

Editor editor = sp.edit();

editor.putString("sim", sim);

}else{

//已經綁定序列號 不做處理

}

//提交到SharedPreferences中

editor.commit();

return ;

}

2.2 檢查SIM卡是否更換 SIM卡的插入一般都會關閉電源,就會導致手機的重新啟動。最新設計的手機都是以側面卡槽換卡,同樣的也會導致手機重啟。因此我們需要設計一個監聽手機重啟事件,當手機重啟時會檢查當前的SIM卡與之前綁定的SIM卡的序列號是否一致。如果發現序列號不一致,那么程序自動給我們的安全號碼發送短信、發送位置信息等功能獲取手機當前的位置、SIM卡等信息。同時我們也可以通過其他手機給我們的手機發送短信指令,根據不同的指令安全衛士會做一些鎖屏、刪除數據、恢復出廠設置等操作以保護我們手機數據的安全。

判斷是否更換SIM卡的核心代碼:

<!-- 注冊一個廣播接收者 如果手機發送重啟將 會發送該廣播-->

public void onReceive(Context context, Intent intent) {

sp = context.getSharedPreferences("config", Context.MODE_PRIVATE);

tm=(TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);

// 讀取之前保存的SiM信息;

String saveSim = sp.getString("sim", "");

//讀取當前的sim卡信息

String realSim = tm.getSimSerialNumber();

//比較是否一樣

if(saveSim.equals(realSim)){

//sim沒有變更,還是原來的SIM卡

}else{

// sim 已經變更

System.out.println("sim 已經變更");

}

}

}

3 手機定位模塊功能的設計

目前有三種常見的手機定位技術:GPS定位技術、基站定位技術和Wi-Fi定位技術。

GPS定位技術:即衛星定位技術。它基于設備GPS芯片以及GPS衛星來追蹤物體位置,GPS芯片性能及應用環境對定位精度有較大的影響。而且室內無法接收GPS信號,因而無法實現室內定位跟蹤。GPS定位耗電量較大,但是精度較高。內置GPS接收器的手機即使在信號盲區,也能準確發送或接收位置信息。

基站定位技術:基于設備獲取的基站信息來跟蹤物體的位置。該技術對外部運行環境不挑剔,但是基站信號的覆蓋半徑會影響定位精度。

Wi-Fi定位技術:定位端只要偵聽附近的Wi-Fi熱點,采集每個熱點信號的強弱參數并發送至服務器。服務器基于每個熱點的參數查詢與之對應的坐標參數,通過運算獲取客戶端的位置信息,并將信息輸出至客戶端。Wi-Fi定位不受外部環境的干擾,因而定位精度較高。

3.1 Android的GPS相關類 ①Location Manager:提供訪問定位服務的功能,用于獲取最佳的定位提供者,所有GPS定位相關的服務、對象都將由該對象來產生。例如獲取最新的位置信息,指定Location Provider的更新周期,獲取設備位置的變化信息。②Location:它就是一個代表位置的抽象類,主要提供了經緯度、標準時間、高度、測量速度、方位角等內容。③Location Provider:Android的定位信息由LocationProvider對象來提供,該對象代表一個抽象的定位組件。在開始編程之前,需要首先獲得Location Provider對象。④Location Listener:當設備的位置信息改變時,該類將進行回調。⑤Criteria:通過設置它的屬性,Location Provider可以選擇合適的提供者。

這五項相互協作為應用程序提供位置信息服務,它們之間的關系如圖2所示。

3.2 Android手機定位代碼的實現 通過調用Android的GPS相關類,把得到的當前位置信息保存在SharedPreferences中,這樣就可以隨時取得手機的位置了。

void getLocation(){

//得到一個位置管理器

LocationManager lm = (LocationManager) getSystemService(LOCATION_SERVICE);

//為位置管理器設置一個標準,該標注是代表精確的

Criteria criteria = new Criteria();

criteria.setAccuracy(Criteria.ACCURACY_FINE);

String proveder = lm.getBestProvider(criteria, true);

//設置一個位置更新的監聽的匿名內部類

lm.requestLocationUpdates(proveder, 0, 0, new LocationListener(){

public void onLocationChanged(Location location) {

//獲取經度

String longitude = "j:" + location.getLongitude() + "\n";

//獲取緯度

String latitude = "w:" + location.getLatitude() + "\n";

//獲取精確度

String accuracy = "a" + location.getAccuracy() + "\n";

//將經度緯度和精確度保存到SharedPreferences并提交

SharedPreferences sp = getSharedPreferences("config", MODE_PRIVATE);

Editor editor = sp.edit();

editor.putString("lastlocation", longitude + latitude + accuracy);

editor.commit();

}

public void onStatusChanged(String provider, int status, Bundle extras) {};

public void onProviderEnabled(String provider){};

public void onProviderDisabled(String provider){};

);

}

4 軟件的實際測試效果

首先在Android手機安裝了本軟件的測試版,首先打開本軟件,進入到簡單的歡迎界面;(圖3)

第二步是綁定自己手機號碼的SIM卡,即將手機的串號綁定進去;(圖4)

第三步,也是最為關鍵的一步,就是要設置一個安全號碼,如果本機被盜,則對方在換卡后重啟手機,那么本應用會自動向安全號碼發送手機的位置信息;(圖5)

第四步,設置完成,保持安全號碼到手機。(圖6)

完成了上述步驟之后,開始將手機的SIM卡拆下來,換上一張新的卡,并開機啟動。啟動后則手機將會觸發啟動的廣播"android.intent.action.BOOT_COMPLETED",手機應用接受到該廣播后將發送手機的位置到我們的安全號碼中。

通過圖7的內容,確實可以看到當我們把手機卡換了之后,手機會向原來設置的安全號碼發送了當前手機的位置信息,這樣也驗證了本軟件的成功運行了。

5 總結

本文提出并設計了一種基于Android智能手機設備平臺下的一種有效的手機防盜解決方案,采用了JDK+Eclipse+Android SDK+ADT搭建的開發環境,并使用了智能手機的GPS模塊,但該模塊不是必須的,查詢手機位置也可以通過網絡來實現。但在具體開發過程中,如果沒有一定的編程基礎以及對Android技術的了解,著手開發類似本文功能的手機防盜功能模塊還是具有一定的難度的。隨著Android技術的不斷快速發展,更加強大的手機防盜功能會被更容易的開發出來。

參考文獻:

[1]葉達峰.Eclipse編程技術與實例[M].北京:人民郵電出版社,2006:67-68.

[2]王悅,岳瑋寧,王衡,董士海.手持移動計算中的多通道交互[J].軟件學報,2005(01).

[3]李輝.基于Android平臺的手機導航系統的設計與實現[D]. 西安電子科技大學,2014.

[4]饒潤潤.基于安卓操作系統的應用軟件開發[D].西安電子科技大學,2014.

[5]閆晉佩,何暉,安文歡,張小輝,任建寶,齊勇.國內第三方Android應用市場安全性的檢測[J].計算機科學,2015(12).

[6]熊健.基于Android平臺的企業移動應用開發框架的分析與設計[J].軟件,2012,33(11):44-46.

主站蜘蛛池模板: 亚洲第一黄片大全| 国产日本视频91| 国产无码制服丝袜| 福利在线不卡一区| 日韩A∨精品日韩精品无码| 国产精品青青| 免费观看成人久久网免费观看| 57pao国产成视频免费播放| 精品国产免费观看一区| 精品国产一二三区| 欧洲精品视频在线观看| 四虎成人精品| 精品久久久久成人码免费动漫 | 网友自拍视频精品区| 天天色综网| 国产亚洲视频播放9000| 国产一区在线视频观看| 久草热视频在线| 亚洲精品无码不卡在线播放| 久久精品最新免费国产成人| 亚洲最大看欧美片网站地址| 久久国产乱子伦视频无卡顿| 青青青视频免费一区二区| 一级成人a做片免费| 亚洲欧美日本国产专区一区| 中文字幕永久视频| 国产精品成人免费综合| 欧美日韩精品一区二区视频| 97超爽成人免费视频在线播放| 99久久精品免费观看国产| 国产啪在线91| 国产精品女熟高潮视频| 好吊日免费视频| 中文字幕久久波多野结衣| 色综合天天娱乐综合网| 亚洲品质国产精品无码| 亚洲高清中文字幕在线看不卡| 婷婷色一区二区三区| 国产精品大白天新婚身材| 91香蕉视频下载网站| 国产美女精品人人做人人爽| 国产精品久久久久久影院| 97se亚洲综合不卡| 黄色免费在线网址| 55夜色66夜色国产精品视频| 久久99国产乱子伦精品免| 九色综合伊人久久富二代| 国产第一页免费浮力影院| 五月天福利视频| 亚洲成A人V欧美综合| 天堂成人在线| 婷婷色在线视频| 精品少妇人妻av无码久久| 国产成人高清精品免费软件| 久久久久国产精品熟女影院| 日本免费高清一区| 高潮毛片免费观看| 高清亚洲欧美在线看| 黄色网页在线播放| 国产精品亚洲天堂| 狠狠v日韩v欧美v| 色妺妺在线视频喷水| 欧美一级视频免费| 国产91视频免费观看| 青青操国产| 国产网友愉拍精品视频| 日韩欧美中文在线| 九色在线视频导航91| 一级不卡毛片| www.亚洲一区| 青青青国产视频手机| 亚洲国产第一区二区香蕉| 好吊日免费视频| 天天综合网在线| 国产99视频精品免费视频7| 精品少妇三级亚洲| 精品日韩亚洲欧美高清a| 久久综合九九亚洲一区| 午夜爽爽视频| 久久久久亚洲av成人网人人软件| 无码中文AⅤ在线观看| 欧美在线综合视频|