【正文】
例如手機收到短信時會產(chǎn)生音樂和振動等狀態(tài),這就是由短息模塊在接收到系統(tǒng)短信接收廣播后作出的動作。(輸入密碼)。不過雖然做法沒錯,但是會比較繁瑣,因為每個設置選項都要建立與其對應的 Preference。北 京 工 業(yè) 大 學 畢 業(yè) 設 計 ( 論 文 )23151617181920212223242526272829303132333435363738394041424344//分別生成對象,以 map1 為例,后面 4 組方法相同 HashMapString,Object map1 = new HashMapString, Object()。我們通過設置一個 onListItemClick 函數(shù),來得到用戶正選擇了哪一列的信息,并做后續(xù)處理。北 京 工 業(yè) 大 學 畢 業(yè) 設 計 ( 論 文 )16圖 Activity 生命周期在本軟件中有 8 個 UI 直接通過繼承 Activity 類構成,他們的應用方法大同小異,我就拿其中最復雜的初始化界面來介紹。監(jiān)聽按鈕事件,是將每個按鈕綁定上一個監(jiān)聽器,用()方法來實現(xiàn),當觸發(fā)相應的監(jiān)聽器后我們就可以執(zhí)行我們想要的操作了。其布局空間類型主要分為 3 大類 AppWidget Provider、PreferenceScreen 和Searchable,其中最常用的是 PreferenceScreen,在這里又包含CheckBoxPreference、EditTextRreference、ListPreference、Preference、RreferenceCategory、PreferenceScreen 和 RingtonePreference7 個控件 [8]。這里我們用 Android 中最常用的 TextView 和 EditText 兩個布局控件滿足需求。為此,在選擇文字的字體、北 京 工 業(yè) 大 學 畢 業(yè) 設 計 ( 論 文 )8顏色、大小以及擺放位置做了無數(shù)次的調(diào)整,努力達到最好、最舒適。在飛速發(fā)展的電子產(chǎn)品中,界面設計工作一點點的被重視起來。其各版本 logo 如圖 所示。通過 Android 系統(tǒng)中的廣播機制后臺監(jiān)聽手機的各種狀態(tài),根據(jù)狀態(tài)的改變來判斷手機是否安全。例如金山手機衛(wèi)士、360 手機衛(wèi)士、 手機管家等保護手機系統(tǒng)安全類軟件中具有防盜功能。而最為愁人的就是現(xiàn)在的手機大都兼容各種電話卡,一旦丟失,就會機卡兩空。本軟件利用 Android 系統(tǒng)的廣播機制,當手機用戶開啟防盜追蹤功能后,本程序將后臺監(jiān)聽手機開機啟動、信號狀態(tài)、短信收發(fā)以及位置的改變,通過監(jiān)聽手機用戶 SIM 卡的 IMSI 碼的改變來判斷手機安全狀態(tài),監(jiān)聽并截獲安全短信內(nèi)容,實現(xiàn)非法用戶的手機號碼向合法用戶預先設置的安全號碼發(fā)送特殊信息的功能,告知用戶當前手機狀態(tài)和位置信息,并可通過安全短信控制被盜手機鎖屏、銷毀隱私數(shù)據(jù)、發(fā)報警音等功能。Android 手機設備運行在 Linux 操作系統(tǒng)下,這使得其上運行的 Android 應用程序具有很強的安全性。警方希望這一手機防盜軟件能改善這一局面 [3]。想在 Android 系統(tǒng)上做開發(fā),就一定要了解 Android 系統(tǒng),知道他的由來和內(nèi)部構造。 UI 設計UI 設計是指對軟件的人機交互、操作邏輯、界面美觀的整體設計。用戶可按照相應提示完成放到設置,其中包括設置防盜安全密碼和設置安全電話號碼。 UI 指令查看層在 UI 指令查看層,總結羅列了開啟每個防盜功能的防盜指令,用戶可以在這里方便快捷的得到所需防盜指令,如圖 所示。例如我們的宇宙圖片。實際上 sharedPreferences 是采用了 XML格式將數(shù)據(jù)存儲到設備中,在 DDMS 中的 File Explorer 中的/data/data//shares_prefs 下。北 京 工 業(yè) 大 學 畢 業(yè) 設 計 ( 論 文 )154 手機防盜應用方案的實施按照手機防盜應用技術的設計理念,我將從 UI 入手,在做完界面的基礎上組合、銜接并加入相應的功能,最后通過 Service 實現(xiàn)后臺監(jiān)聽、儲存、處理等功能。//指明跳轉 Activity(, )。下面以 UI 功能體驗層為例根據(jù)圖 的程序流程圖分析下代碼:北 京 工 業(yè) 大 學 畢 業(yè) 設 計 ( 論 文 )22創(chuàng)建 T i y a n 類覆寫 o n C r e a t e 方法通過S i m p l eA d a p t e r 裝入數(shù)據(jù)應用L i s t I t e m Cl i c k 綁定監(jiān)聽器用戶點擊按鈕事件s e tC o nt en t Vi e w顯示界面等待用戶點擊事件NYL a y o u tL i s t 數(shù)據(jù)框架s t a r t A c t i v i t y 到d i n g w e iL a y o u t主框架s t a r t A c t i v i t y 到d i n g w e is t a r t A c t i v i t y 到d i n g w e is t a r t A c t i v i t y 到d i n g w e is t a r t A c t i v i t y 到d i n g w e is t a r t A c t i v i t y 到d i n g w e i012345圖 體驗功能 UI 流程圖? Java 文件:1234567891011121314//首先我們的體驗層要繼承 ListActivitypublic class Tiyan extends ListActivity//在這里設置各功能對應的數(shù)值private static final int dingwei = 0。// (textIntent,123)。二是在 Activity 的 onCreateDialog(int id)方法中創(chuàng)建 Dialog 對象并返回,然后調(diào)用 Activty 的 showDialog(int id)和 dismissDialog(int id)來顯示和隱藏對話框。所以,只有 Function 的完美實現(xiàn)才能體現(xiàn)出一個軟件的真正價值。待手機檢測到信號,可執(zhí)行移動服務的。 由 Sever 支持的 Function 實現(xiàn)有了完整的 UI,我們就可以在 Function 里實現(xiàn)這些 UI 對應的功能。P r e f e r e n c e S c r e e ns h e z h i . x m lt i t l es u m m a r yC h e c k B o xP r e f e r e n c e t i t l es u m m a r yC h e c k B o xP r e f e r e n c e t i t l es u m m a r yC h e c k B o xP r e f e r e n c e d i a l o g T i t l es u m m a r yE d i t T e x tP r e f e r e n c ed i a l o g T i t l es u m m a r yE d i t T e x tP r e f e r e n c et i t l ek e yP o s i t i v eB u t t o n T e x tN e g a t i v eB u t t o n T e x tt i t l ek e yP o s i t i v eB u t t o n T e x tN e g a t i v eB u t t o n T e x t圖 文件屬性構架其代碼就是對屬性進行相應配置即可如 android:password=true等,這里就不做詳細介紹了,具體代碼請看附錄二。 //覆寫 onListItemClick()方法獲得用戶點擊事件Overrideprotected void onListItemClick(ListView l, View v, int position, long id) {// TODO Autogenerated method stub(l, v, position, id)。HashMap 就是一種 Map,在 Map 中數(shù)據(jù)都是以鍵值對的方式存在的,這樣,我們的數(shù)據(jù)最終在 List 中的存儲方式就是以鍵值對的形式存在的。//提交改動到數(shù)據(jù)庫并保存()。 GPS 服務對于 GPS 我想大家現(xiàn)在都很了解,至少不會陌生,一般情況下每個裝載 GPS 的設備都會由 3 顆衛(wèi)星進行定位,在需要時可將設備所在的位置信息發(fā)送到 GPS 上,例如返回的經(jīng)緯度,有了這些位置信息我們便可進行需要的操作 [10]。SharedPreferences 是以鍵值對來存儲應用程序的配置信息的一種方式,它只能存北 京 工 業(yè) 大 學 畢 業(yè) 設 計 ( 論 文 )13儲基本數(shù)據(jù)類型。在 Android 中所有資源文件要統(tǒng)一管理并放到 res文件夾中,并把每個資源都加上各自的 ID,以方便調(diào)用。北 京 工 業(yè) 大 學 畢 業(yè) 設 計 ( 論 文 )9圖 UI 功能體驗層當用戶點擊進入 UI 功能體驗層的每個選項后,就會看到每個功能實現(xiàn)的具體說明,而且在每個可以單機實驗的功能里都加進了功能體驗按鈕,可以讓用戶體驗本功能的真實效果。用戶開啟應用軟件用戶信息確認用戶設置初始化判斷是否是第一次Y NU I 主層U I 功能查看層U I 功能查看層U I 功能查看層圖 UI 總流程圖 UI 窗口層UI 窗口層分為兩個界面,一個是初次開啟應用時進入的設置初始化界面,另一個北 京 工 業(yè) 大 學 畢 業(yè) 設 計 ( 論 文 )7則是用戶在非第一次開啟應用時彈出的用戶身份驗證窗口。綜合以上軟件優(yōu)點便是此軟件將要實現(xiàn)并達到的目標。對此,我通過觀看 Mars 老師的 Java4Android 視頻和對 Java 相關書籍的精讀與練習,強化了自己對Java 語言的掌握,使我對 Java 的運用能力有了很大的提高,并為編寫與設計 Android應用奠定了良好地基礎。用戶購買新手機后,還可申請將原來手機中的全部信息轉移至新手機內(nèi)。并且眾多手機制造商,如三星、摩托羅拉、HTC、LG 和小米等,還有許多半導體公司,如英特爾、德州儀器、NVIDIA 和高通等,參與 Android 手機設計。與之帶來最讓人煩心的是私人數(shù)據(jù)的丟失及帶來的不安全隱患。其實不論你的手機值不值錢,丟東西的事情本身就會讓人頭疼。當用戶在手機中安裝這款軟件后,每月只需支付 10 英鎊(約合 18 美元)即可享受防盜服務。北 京 工 業(yè) 大 學 畢 業(yè) 設 計 ( 論 文 )42 手機防盜應用開發(fā)的基礎 Java 基礎Java 由 Sun(Stanford University Network)公司于 1995 年 5 月為增強互聯(lián)網(wǎng)的交互性而設計。于是我選擇了目前市場應用最為廣泛的金山手機衛(wèi)士、360 手機衛(wèi)士和 手機管家其中的手機防盜部分作為參考。其實軟件界面設計就像工業(yè)產(chǎn)品中的工業(yè)造型設計一樣,是產(chǎn)品的重要賣點。 UI 主層UI 主層是個選擇界面如圖 ,本層為用戶提供 3 種主要操作,分別為防盜功能體驗、防盜指令查看、防盜信息設置。對于密碼的設置,我們都希望處于不可見狀態(tài)以保證我們個人信息的安全,我用 password 屬性來控制輸入時的顯示狀態(tài)。 Service 設計手機防盜應用軟件在實際應用過程中一定是常駐后臺的軟件,所以不管用戶是否打開軟件,只要是開啟了防盜功能,那此軟件就會一直在后臺運行,出于這樣的考慮,我們就必須引進一個強大的后臺支持,那就是 Service 既后臺服務。那么這種監(jiān)聽開機需要另一項 Android 機制的支持來完成——廣播機制。北 京 工 業(yè) 大 學 畢 業(yè) 設 計 ( 論 文 )17創(chuàng)建 F i r s t 類覆寫 o n C r e a t e 方法聲明并得到 B u t t o n控件為每個B u t t o n 綁定監(jiān)聽器用戶點擊按鈕事件s e tC o nt e nt V ie w 顯示界面等待用戶點擊事件NYL a y o u t提供控件判斷密碼是否不為空提示輸入狀態(tài)錯誤判斷密碼是否合法判斷手機號是否合法判斷手機號是否不為空判斷兩次密碼是否一致YYYYNNNNNe d i t o r . c o m m i t ( )提交數(shù)據(jù)庫s t a r t A c t i v i t y 到M a i n圖 初始化 UI 流程圖? .java 文件:首先新建一個繼承 Activity 的類 FirstPublic class First extends Activity{}在此類里面對 UI 界面進行編輯以下為