【正文】
的縮寫。好的 UI 設(shè)計不僅是讓軟件變得有個性有品味,還要讓軟件的操作變得舒適、簡單、自由,充分體現(xiàn)軟件的定位和特點。不過從 Function 上來看,金山手機防盜的設(shè)計就要優(yōu)于另外兩家,在所有功能的基礎(chǔ)上還加進了一項防盜拍照,這是僅有 4 項功能的 所沒能想到的安全設(shè)計。于是我選擇了目前市場應(yīng)用最為廣泛的金山手機衛(wèi)士、360 手機衛(wèi)士和 手機管家其中的手機防盜部分作為參考。最早的 Android 版本為 Android (發(fā)條機器人) ,自 Android 系統(tǒng)發(fā)布第一版本到現(xiàn)在已經(jīng)更新多次。Android 操作系統(tǒng)最初主要支持手機,2022 年 Google 收購了剛剛成立 22 個月的Android 公司,也正是有了在 Google 這樣巨頭公司下發(fā)展的機會才使得 Android 系統(tǒng)迅猛發(fā)展。所以,想在 Android系統(tǒng)上做出一個好的應(yīng)用來不僅要會 Java 語言,而且還要運用熟練。北 京 工 業(yè) 大 學(xué) 畢 業(yè) 設(shè) 計 ( 論 文 )42 手機防盜應(yīng)用開發(fā)的基礎(chǔ) Java 基礎(chǔ)Java 由 Sun(Stanford University Network)公司于 1995 年 5 月為增強互聯(lián)網(wǎng)的交互性而設(shè)計。同時,防盜應(yīng)用軟件也應(yīng)充分利用操作系統(tǒng)固有的資源。美國的蘋果公司,在其官網(wǎng)上向所有用戶提供了一項云端技術(shù)服務(wù),只要蘋果手機或者蘋果的其他移動設(shè)備,都可以享受到手機衛(wèi)星定位功能。此外,只要不取出電池,鳴聲就不會停止。當(dāng)用戶在手機中安裝這款軟件后,每月只需支付 10 英鎊(約合 18 美元)即可享受防盜服務(wù)。綜觀 Android 手機系統(tǒng),我們不難發(fā)現(xiàn),應(yīng)用本系統(tǒng)開發(fā)手機的生產(chǎn)廠商多,用戶基數(shù)大,安全性高,并受到眾多大牌公司支持,基于以上優(yōu)越性,在 Android 系統(tǒng)上開發(fā)本手機防盜應(yīng)用具有重要的現(xiàn)實意義。每一個 Android 應(yīng)北 京 工 業(yè) 大 學(xué) 畢 業(yè) 設(shè) 計 ( 論 文 )2用程序均運行在不同的進程中,每個進程都對應(yīng)一個 Dalvik 虛擬機的實例。Google 提供在線文檔、工具、論壇和軟件開發(fā)工具包等資源,以便開發(fā)者在 Android 平臺上開發(fā)應(yīng)用程序。其實不論你的手機值不值錢,丟東西的事情本身就會讓人頭疼。手機功能的增多以及不斷完善,自然價格也高低不一,好的手機可以賣到筆記本的價格。最后將設(shè)計完成的軟件進行測試,其所有功能都完美實現(xiàn),真正起到了手機防盜追蹤的作用。由于現(xiàn)在人們的工作繁忙,手機的丟失似乎也成為常有的事。與之帶來最讓人煩心的是私人數(shù)據(jù)的丟失及帶來的不安全隱患。關(guān)鍵詞:Android 系統(tǒng) 手機防盜 廣播機制 監(jiān)聽器北 京 工 業(yè) 大 學(xué) 畢 業(yè) 設(shè) 計 ( 論 文 )ABSTRACTIn recent years, the intelligent mobile phone function is powerful, the mobile terminal application emerge in an endless stream. Because now people39。關(guān)于手機我們能想到很多人們擔(dān)心的話題。那么該怎樣制服盜機者,在我們提高自身防范意識的同時,適當(dāng)?shù)臑槭謾C增加些防盜功能也是應(yīng)該的。并且眾多手機制造商,如三星、摩托羅拉、HTC、LG 和小米等,還有許多半導(dǎo)體公司,如英特爾、德州儀器、NVIDIA 和高通等,參與 Android 手機設(shè)計?;?Java 虛擬機,Dalvik 為移動設(shè)備進行了優(yōu)化設(shè)計。 國內(nèi)外研究現(xiàn)狀 國內(nèi)研究狀況毋庸置疑手機防盜應(yīng)用肯定歸屬于手機安全類軟件,對于安全軟件的開發(fā)與研究又是殺毒軟件公司首要考慮的功能之一,所以國內(nèi)的很多殺毒軟件公司在自己的產(chǎn)品中都涉及了防盜功能。一旦手機被盜,用戶可立即致電公司。用戶購買新手機后,還可申請將原來手機中的全部信息轉(zhuǎn)移至新手機內(nèi)。具體做法是:首先,在拿到蘋果后,你要先申請屬于你的 Apple ID,登錄蘋果商店或者在 Mobile Me 上注北 京 工 業(yè) 大 學(xué) 畢 業(yè) 設(shè) 計 ( 論 文 )3冊,這個應(yīng)用就可以實時定位你的 iPhone 的位置。因此,本課題的任務(wù)是設(shè)計一款基于 Android 平臺開發(fā)的一款手機防盜軟件。Java 語言最早的名字為 C++,從名字上我們可以看出,Java 語言的原型為 C 語言,后經(jīng)大量優(yōu)化在 C 基礎(chǔ)上增增減減,最終設(shè)計出這款現(xiàn)在企業(yè)級開發(fā)的第一語言 [4]。對此,我通過觀看 Mars 老師的 Java4Android 視頻和對 Java 相關(guān)書籍的精讀與練習(xí),強化了自己對Java 語言的掌握,使我對 Java 的運用能力有了很大的提高,并為編寫與設(shè)計 Android應(yīng)用奠定了良好地基礎(chǔ)。2022 年 11 月 5 日,以 Google 為首的 34 家公司宣布成立 OHA(Open Handset Alliance,開放手機聯(lián)盟)。Android Beta(阿童木) 2022 年 9 月發(fā)布的 Android 第一版,后來由于涉及到版權(quán)問題,Goolge 將其命名規(guī)則變更為用甜點作為它們系統(tǒng)版本的代號的命名方法。學(xué)習(xí)并對比這 3 家在此功能上的不同。綜合以上軟件優(yōu)點便是此軟件將要實現(xiàn)并達到的目標(biāo)。如圖 就是一副很美觀的 UI。從字面上看是用戶與界面 2 個組成部分,但實際上還包括用戶與界面之間的交互關(guān)系。一個電子產(chǎn)品擁有美觀的界面會給人帶來舒適的視覺享受,拉近人與商品的距離,為商家創(chuàng)造賣點。用戶開啟應(yīng)用軟件用戶信息確認(rèn)用戶設(shè)置初始化判斷是否是第一次Y NU I 主層U I 功能查看層U I 功能查看層U I 功能查看層圖 UI 總流程圖 UI 窗口層UI 窗口層分為兩個界面,一個是初次開啟應(yīng)用時進入的設(shè)置初始化界面,另一個北 京 工 業(yè) 大 學(xué) 畢 業(yè) 設(shè) 計 ( 論 文 )7則是用戶在非第一次開啟應(yīng)用時彈出的用戶身份驗證窗口。另外,設(shè)置好的防盜安全密碼將會編進防盜指令,用于控制手機實現(xiàn)相應(yīng)的操作。UI 窗口層為本應(yīng)用軟件的最頂層,此層的 UI 設(shè)計好壞決定了用戶對本軟件的第一印象,所以要想得到用戶的肯定,這層的設(shè)計一定要做好。圖 UI 主層在本層 UI 的上面是一個宇宙圖片,寓意著安裝本應(yīng)用后,即使你的手機被帶到了宇宙我們也能找到它,當(dāng)然這有些夸張了,不過我們還是要對此軟件充滿信任的。北 京 工 業(yè) 大 學(xué) 畢 業(yè) 設(shè) 計 ( 論 文 )9圖 UI 功能體驗層當(dāng)用戶點擊進入 UI 功能體驗層的每個選項后,就會看到每個功能實現(xiàn)的具體說明,而且在每個可以單機實驗的功能里都加進了功能體驗按鈕,可以讓用戶體驗本功能的真實效果?;谝陨弦c,首先總結(jié)本防盜軟件的設(shè)置功能如表 2。 應(yīng)用初始化初始化界面是讓用戶設(shè)置信息用的,所以首先我要告訴用戶需要設(shè)置的信息都有哪些,介紹完后還要在相應(yīng)的位置給出用于填寫信息的控件。在整個 UI 的最下面我還放置了兩個按鈕,方便用戶的進一步應(yīng)用和退出,此功能將用 Button 控件實現(xiàn)。在 Android 中所有資源文件要統(tǒng)一管理并放到 res文件夾中,并把每個資源都加上各自的 ID,以方便調(diào)用。外面一層同樣用一個繼承 ListActivity 的類來實現(xiàn),在 list 空間里排布好每個圖標(biāo)和文字的位置,這里要用到 ImageView 控件添加圖片。 功能設(shè)置功能設(shè)置 UI 為用戶可操控界面,所以要使用繼承 PreferenceActivity 的類來完成相應(yīng)的功能,此類是 Android 專門用來做 UI 設(shè)置界面用的,所以這個類中方法的應(yīng)用也相對方便,但其布局文件與眾不同,需要在 res 文件中新建個 XML 文件進行單獨管理。 數(shù)據(jù)庫存儲服務(wù)在 Android 系統(tǒng)中,用于保存數(shù)據(jù)有 3 種方式:SQLite、SharedPreferences 和File。SharedPreferences 是以鍵值對來存儲應(yīng)用程序的配置信息的一種方式,它只能存北 京 工 業(yè) 大 學(xué) 畢 業(yè) 設(shè) 計 ( 論 文 )13儲基本數(shù)據(jù)類型。具體問題具體分心,根據(jù)我們的需要與要求,本程序最終選定用SharedPreferences 來存儲我們的數(shù)據(jù)。在我們的軟件中將會運用大量的監(jiān)聽器,其中包括監(jiān)聽用戶點擊按鈕事件、監(jiān)聽開機廣播事件、監(jiān)聽短信廣播事件等。在 Android 里面有各種各樣的廣播,比如電池的使用狀態(tài),電話的接收和短信的北 京 工 業(yè) 大 學(xué) 畢 業(yè) 設(shè) 計 ( 論 文 )14接收都會產(chǎn)生一個廣播。 GPS 服務(wù)對于 GPS 我想大家現(xiàn)在都很了解,至少不會陌生,一般情況下每個裝載 GPS 的設(shè)備都會由 3 顆衛(wèi)星進行定位,在需要時可將設(shè)備所在的位置信息發(fā)送到 GPS 上,例如返回的經(jīng)緯度,有了這些位置信息我們便可進行需要的操作 [10]。 UI 的實現(xiàn)在 Android 系統(tǒng)中,UI 的構(gòu)建主要都由 Activity 類來完成。圖 為 Google 官方給出的 Activity 生命周期流程圖。//用 findViewById 的方法聲明并得到 Button 控件Button bt_sure = (Button)findViewById()。//提交改動到數(shù)據(jù)庫并保存()。北 京 工 業(yè) 大 學(xué) 畢 業(yè) 設(shè) 計 ( 論 文 )19L i n e a r L a y o u tL i n e a r L a y o u tR e l a t i v e L a y o u tL i n e a r L a y o u tT e x t V i e wT e x t V i e wT e x t V i e wT e x t V i e wT e x t V i e w E d i t T e x tL i n e a r L a y o u tT e x t V i e w E d i t T e x tL i n e a r L a y o u tT e x t V i e wT e x t V i e wT e x t V i e wB u t t o n B u t t o n圖 layout 布局控件示意圖? 文件:為 Activity 提供布局支持的 layout 文件是 UI 如何顯示的控制中心,這個文件里的控件屬性決定了控件的顯示位置,圖 是為 First 提供布局控件的 layout 的示意圖,其主要代碼如下:1234567891011121314//第一行定義了布局文件所鏈接數(shù)據(jù)庫的版本以及支持的語言,utf8為中文。ListActivity 用來在屏幕中顯示一個列表,當(dāng)點擊其中的某一列時,可以觸發(fā)一些操作。圖 就是一個典型的 ListView 示意圖。HashMap 就是一種 Map,在 Map 中數(shù)據(jù)都是以鍵值對的方式存在的,這樣,我們的數(shù)據(jù)最終在 List 中的存儲方式就是以鍵值對的形式存在的。 //銷毀數(shù)據(jù)private static final int suoding = 2。//建立一個 HashMap 放進 ArrayList 中ArrayListHashMapString,Object list=new ArrayListHashMapString,Object()。 (img, )。 //覆寫 onListItemClick()方法獲得用戶點擊事件Overrideprotected void onListItemClick(ListView l, View v, int position, long id) {// TODO Autogenerated method stub(l, v, position, id)。(intent)。因此當(dāng)我們在界面上做設(shè)置的時候自然就會想到 Activity+Preference 的組合,前者用于界面的構(gòu)造,后者用于設(shè)置數(shù)據(jù)的存放。所以我們只需要在布局文件中按需求添加控件就可以了。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圖 文件屬性