- Android項目實戰:手機安全衛士
- 傳智播客高教產品研發部編著
- 1343字
- 2020-06-18 17:58:51
2.1 模塊概述
2.1.1 功能介紹
手機防盜模塊主要用于SIM卡變更提醒、GPS定位、遠程鎖定手機、遠程刪除數據等。接下來針對該模塊功能進行介紹,具體如下:
1.設置密碼
手機防盜功能是用戶的一個隱私設置,因此當第一次進入“手機防盜”模塊時需要設置密碼,密碼設置成功后當再次進入時需要輸入密碼,才能進入“手機防盜”模塊并修改當前設置,具體如圖2-1所示。

圖2-1 手機防盜界面
2.設置向導
設置向導主要有四個界面,分別用來展示當前模塊的功能、SIM卡綁定情況、選擇安全聯系人、設置完成界面,這幾個界面都是通過手指滑動屏幕來實現界面切換的。
當進入SIM卡綁定界面,點擊“綁定SIM卡”按鈕后,滑動屏幕進入選擇安全聯系人界面,可以選擇通訊錄中的號碼作為安全號碼或者直接輸入安全號碼,當SIM卡變更時會向安全號碼發送報警短信。當前功能都設置完成后,滑動屏幕進入設置完成界面,此時顯示防盜保護已經開啟,具體如圖2-2所示。

圖2-2 設置向導界面
3.聯系人列表
在設置向導中添加安全聯系人時,點擊“請輸入安全號碼”右側的加號按鈕,還可以跳轉到聯系人列表界面,從該列表中選取安全聯系人,具體如圖2-3所示。
4.手機防盜界面
手機防盜界面會顯示當前設置的安全號碼、防盜保護是否開啟、重新進入設置向導以及短信指令功能介紹。所謂短信指令就是編輯好的一些特殊指令,當向手機發送對應的指令時會進行不同的操作,例如向手機發送短信“#*alarm*#”此時手機會播放報警音樂,界面如圖2-4所示。

圖2-3 聯系人列表界面

圖2-4 手機防盜界面
至此,手機防盜功能已經介紹完成,編程者在開發該功能界面時可以參考上述效果圖。
2.1.2 開發流程圖
在開發手機防盜模塊之前,可以先畫一張流程圖,了解程序邏輯方便程序開發。手機防盜模塊的流程圖如圖2-5所示。
從圖2-5可以看出,當點擊“手機防盜”功能圖標時,會判斷是否設置過防盜密碼,如果已經設置,則彈出輸入密碼對話框;否則彈出設置密碼對話框,密碼設置成功后會再次彈出輸入密碼對話框,當密碼輸入正確時會進入手機防盜界面,然后判斷是否設置過防盜向導。如果設置過,則展示手機防盜界面功能,否則進入設置向導界面依次進行設置,設置完成后進入手機防盜界面。
2.1.3 代碼結構
手機防盜模塊中涉及的代碼比較多,邏輯也比較復雜,為了讓編程者對該模塊的結構更加清楚,接下來通過一個圖例來展示手機防盜模塊的代碼結構,如圖2-6所示。

圖2-5 手機防盜流程圖

圖2-6 chapter02代碼結構
下面按照結構順序依次介紹chapter02包中的文件,具體如下:
●ContactAdapter.java:用于填充聯系人界面的數據適配器;
●InterPasswordDialog.java:自定義的Dialog對話框,用于輸入防盜密碼;
●SetUpPasswordDialog.java:自定義的Dialog對話框,用于設置防盜密碼;
●ContactInfo.java:用于存儲聯系人信息的實體類,其中包括id、name、phone字段;
●BootCompleteReciever.java:用于監聽手機開機啟動的廣播接收者,檢測SIM卡是否更換;
●MyDeviceAdminReceiver.java:用于獲取超級管理員權限的廣播接收者;
●SmsLostFindReceiver.java:監聽短信到來的廣播接收者,接收到指令后進行相應的報警操作;
●GPSLocationService.java:用于定位手機的服務;
●ContactInfoParser.java:用于從數據庫中解析聯系人信息;
●MD5Utils.java:加密算法的工具類;
●BaseSetUpActivity.java:設置向導的公共父類,封裝了一些手勢識別的方法;
●ContactSelectActivity.java:獲取手機中的聯系人并展示到界面中;
●LostFindActivity.java:用于顯示手機防盜界面以及防盜指令;
●SetUp1Activity.java:顯示設置向導第一個界面;
●SetUp2Activity.java:顯示設置向導第二個界面并綁定SIM卡;
●SetUp3Activity.java:顯示設置向導第三個界面并選擇安全聯系人;
●SetUp4Activity.java:顯示設置向導第四個界面并開啟防盜保護功能。