基于安卓平臺(tái)的手機(jī)助手設(shè)計(jì)與實(shí)現(xiàn)可行性研究報(bào)告_第1頁(yè)
基于安卓平臺(tái)的手機(jī)助手設(shè)計(jì)與實(shí)現(xiàn)可行性研究報(bào)告_第2頁(yè)
基于安卓平臺(tái)的手機(jī)助手設(shè)計(jì)與實(shí)現(xiàn)可行性研究報(bào)告_第3頁(yè)
基于安卓平臺(tái)的手機(jī)助手設(shè)計(jì)與實(shí)現(xiàn)可行性研究報(bào)告_第4頁(yè)
基于安卓平臺(tái)的手機(jī)助手設(shè)計(jì)與實(shí)現(xiàn)可行性研究報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩53頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、基于安卓平臺(tái)的手機(jī)助手設(shè)計(jì)與頭現(xiàn)可行性研究報(bào)告摘要Android 是智能手機(jī)最廣泛的應(yīng)用系統(tǒng)之一, 在如此大的市場(chǎng)環(huán)境下, Android 應(yīng)用數(shù)不勝數(shù),但應(yīng)用也增加了手機(jī)的負(fù)荷,降低了手機(jī)的使用效率。針對(duì)此問(wèn)題, 對(duì)用戶遇到的實(shí)際問(wèn)題進(jìn)行了調(diào)查, 分析出用戶們希望通過(guò)應(yīng)用軟件對(duì)手機(jī)進(jìn)行管理, 從而提高手機(jī)性能。通過(guò)對(duì)用戶的需求調(diào)查, 針對(duì)用戶所面臨的問(wèn)題, 設(shè)計(jì)并開(kāi)發(fā)了一個(gè)手機(jī)助手軟 件系統(tǒng)。系統(tǒng)實(shí)現(xiàn)了屏蔽來(lái)電、軟件管理、任務(wù)管理、手機(jī)殺毒等功能,主要開(kāi)發(fā)過(guò) 程包括: 對(duì)該系統(tǒng)進(jìn)行需求分析, 得到該系統(tǒng)的用例圖及用例描述; 對(duì)系統(tǒng)進(jìn)行分析 設(shè)計(jì),得到該系統(tǒng)的結(jié)構(gòu)設(shè)計(jì)和功能模塊設(shè)計(jì);設(shè)計(jì)數(shù)據(jù)庫(kù)

2、,得到數(shù)據(jù)庫(kù)表;基于 Java 語(yǔ)言、 Android 開(kāi)發(fā)技術(shù)實(shí)現(xiàn)系統(tǒng),編寫(xiě)了代碼;對(duì)系統(tǒng)進(jìn)行功能測(cè)試,保證 其功能的完善。在系統(tǒng)開(kāi)發(fā)完成后, 將本系統(tǒng)在小范圍內(nèi)的用戶手機(jī)中進(jìn)行了測(cè)試調(diào)查, 調(diào)查結(jié) 果得出系統(tǒng)可以達(dá)到預(yù)期的效果, 用戶們對(duì)系統(tǒng)的使用反響良好。 總結(jié)用戶們反饋回 來(lái)的信息, 他們指出該系統(tǒng)可以幫助用戶對(duì)手機(jī)的日常管理, 達(dá)到了系統(tǒng)在設(shè)計(jì)階段 時(shí)所針對(duì)的問(wèn)題,為用戶提供了管理便利和安全保護(hù)。目錄第1 章緒論 1課題研究背景 1目的及意義 2目的 2意義 2Android 發(fā)展現(xiàn)狀 2論文組織結(jié)構(gòu) 3本章小結(jié) 4第2章需求分析 5概述 5系統(tǒng)目標(biāo) 5總體目標(biāo) 5具體目標(biāo) 5系統(tǒng)可

3、行性分析 6社會(huì)可行性分析 6技術(shù)可行性分析 6經(jīng)濟(jì)可行性分析 6業(yè)務(wù)流程 6功能需求 8功能需求調(diào)查 8用戶功能用例分析 1.0.非功能性需求 1.5環(huán)境需求 1.6未來(lái)功能需求 1.6本章小結(jié) 1.6第3 章系統(tǒng)總體設(shè)計(jì) 18概述 1.8系統(tǒng)原則及方法 1.8原則 1.8方法 1.9系統(tǒng)采用的技術(shù)支持 2.0Android 開(kāi)發(fā)環(huán)境介紹 2.0.Android SDK 簡(jiǎn)介 2.1.Java 語(yǔ)言 2.2結(jié)構(gòu)設(shè)計(jì) 2.4功能模塊設(shè)計(jì) 2.5模塊功能設(shè)計(jì) 2.5數(shù)據(jù)結(jié)構(gòu)說(shuō)明 2.6數(shù)據(jù)庫(kù)設(shè)計(jì) 2.6設(shè)計(jì)原則 2.6數(shù)據(jù)庫(kù)設(shè)計(jì) 2.7本章小結(jié) 2.9第4 章系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn) 30Androi

4、d 架構(gòu) 3.0 SQLite 數(shù)據(jù)庫(kù) 3.3 面向?qū)ο笤O(shè)計(jì) 3.4系統(tǒng)模塊的實(shí)現(xiàn) 3.5數(shù)據(jù)庫(kù)的實(shí)現(xiàn) 3.5用戶管理黑名單的具體實(shí)現(xiàn) 3.6.流量監(jiān)測(cè)功能的具體實(shí)現(xiàn) 3.8.任務(wù)管理功能的具體實(shí)現(xiàn) 3.8.程序鎖功能的具體實(shí)現(xiàn) 4.0.本章小結(jié) 4.1第5 章 系統(tǒng)測(cè)試 42測(cè)試的概念和測(cè)試的目的 4.2.系統(tǒng)測(cè)試 4.2黑盒測(cè)試 4.4黑盒測(cè)試的優(yōu)點(diǎn) 4.5測(cè)試計(jì)劃 4.5測(cè)試結(jié)果 4.6黑名單模塊 4.6程序鎖模塊 4.7程序管理模塊 4.85.4 測(cè)試總結(jié) 4.8本章小結(jié) 4.9結(jié)論與展望 50致 謝 錯(cuò)誤!未定義書(shū)簽參考文獻(xiàn) 錯(cuò)誤!未定義書(shū)簽附錄 1 部分系統(tǒng)界面截圖 錯(cuò)誤!未定義書(shū)

5、簽附錄 2 部分源代碼 錯(cuò)誤!未定義書(shū)簽第1 章 緒論隨著智能手機(jī)的普及, 手機(jī)軟件成為了一個(gè)新的商業(yè)競(jìng)爭(zhēng)市場(chǎng), 每天都有大量的 手機(jī)軟件上架, 而用戶的手機(jī)也是被各種應(yīng)用軟件所占據(jù)。 當(dāng)手機(jī)里的軟件越來(lái)越多 達(dá)到一定規(guī)模的時(shí)候, 用戶們會(huì)發(fā)現(xiàn)他們每天都會(huì)在手機(jī)的使用上浪費(fèi)大量的操作時(shí) 間,于是管理軟件成為一個(gè)熱點(diǎn)被人們所追求, 人們希望有一款軟件可以幫助他們簡(jiǎn) 化手機(jī)的使用,從而提高手機(jī)性能。課題研究背景智能手機(jī)( Smartphone ),是指“像個(gè)人電腦一樣,具有獨(dú)立的操作系統(tǒng),可 以由用戶自行安裝軟件、 游戲等第三方服務(wù)商提供的程序, 通過(guò)此類程序來(lái)不斷對(duì)手 機(jī)的功能進(jìn)行擴(kuò)充,并可以通

6、過(guò)移動(dòng)通訊網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)無(wú)線網(wǎng)絡(luò)接入的這樣一類手機(jī)的 總稱”。Android 是一種以 Linux 為基礎(chǔ)的開(kāi)放源碼操作系統(tǒng),其最大特色就是擴(kuò)展性 能強(qiáng),第三方軟件支持多。An droid操作系統(tǒng)最初由An dy Rubin開(kāi)發(fā),最初主要 支持手機(jī)。 2005 年由 Google 收購(gòu)注資,并組建開(kāi)放手機(jī)聯(lián)盟開(kāi)發(fā)改良,逐漸擴(kuò)展 到平板電腦及其他領(lǐng)域上。 Android 的主要競(jìng)爭(zhēng)對(duì)手是蘋(píng)果公司的 IOS 以及 RIM 的 Blackberry OS 。 2011 年第一季度, Android 在全球的市場(chǎng)份額首次超過(guò)塞班系統(tǒng), 躍居全球第一。 2012 年 2 月數(shù)據(jù), Android 占據(jù)全球智

7、能手機(jī)操作系統(tǒng)市場(chǎng) 52.5% 的份額,中國(guó)市場(chǎng)占有率為 68.4% 2 。在這個(gè)信息化的時(shí)代,手機(jī)已成為繼固定電話之后最為通俗的交流工具 3。在這 個(gè)人與人關(guān)系愈加密切的時(shí)代, 手機(jī)成了生活中的必需品。 伴隨著手機(jī)的普及, 人們 對(duì)手機(jī)的功能需求也越來(lái)越多, 手機(jī)不僅要能打電話, 還要成為娛樂(lè)設(shè)備, 上網(wǎng)沖浪 設(shè)備等,而隨著手機(jī)中軟件的增加,其安全性、快捷性等性能就大打折扣,這樣的手 機(jī)不再是人們想象中的微型電腦, 因此手機(jī)用戶呼吁一款可以提高手機(jī)性能且能保護(hù) 手機(jī)的應(yīng)用軟件,所以手機(jī)管理軟件應(yīng)運(yùn)而生。目的及意義目的手機(jī)管理軟件是應(yīng)運(yùn)市場(chǎng)的需要而產(chǎn)生的, 是手機(jī)用戶們迫切需要的一款應(yīng)用軟 件

8、。它提出的目的是為了降低手機(jī)日常使用的復(fù)雜化和提高手機(jī)的安全性, 是為了能 給手機(jī)用戶帶來(lái)手機(jī)日常權(quán)限管理功能的集中化、高效化和快捷化好處。意義 手機(jī)管理軟件能使用戶在使用手機(jī)的過(guò)程中減少繁瑣的操作和提高手機(jī)的性能, 避免用戶在使用手機(jī)時(shí)浪費(fèi)不必要的時(shí)間; 也可以幫助用戶保護(hù)手機(jī), 增加手機(jī)的安 全性??傊囊饬x在于使得手機(jī)的使用可以更加簡(jiǎn)單、更加安全和更易管理。因此,開(kāi)發(fā)一個(gè)基于幫助管理手機(jī)的可視化系統(tǒng)是在必行。 其系統(tǒng)總的設(shè)計(jì)思想 是以組成界面的元素為對(duì)象, 用構(gòu)件的形式加以描述, 組織并提供一個(gè)可視化的管理 環(huán)境,使用戶能放心和快速的使用手機(jī)。Android 發(fā)展現(xiàn)狀隨著 3G 應(yīng)用

9、的普及和 4G 網(wǎng)絡(luò)的推廣,用戶會(huì)越來(lái)越需要更加個(gè)性化、優(yōu)質(zhì)化 的服務(wù),用戶希望能夠隨時(shí)、隨地?zé)o縫利用 3G 和 4G 網(wǎng)絡(luò)進(jìn)行辦公、網(wǎng)上交易、游 戲娛樂(lè)、欣賞影視節(jié)目、收聽(tīng)和下載等。根據(jù)觀察,在近年來(lái),移動(dòng)手機(jī)終端已經(jīng)有 了以下若干方面的新發(fā)展。首先,提供智能提醒服務(wù), 手機(jī)能夠與用戶實(shí)現(xiàn)密切配合, 并監(jiān)控用戶的個(gè)性化 設(shè)置(保持在本地或者云端) ,當(dāng)重要時(shí)間點(diǎn)或關(guān)鍵事物需要用戶注意時(shí),手機(jī)會(huì)向 用戶發(fā)出“提醒”服務(wù),服務(wù)包括日程提醒、交通狀況、最佳行車路線、最佳泊位、 優(yōu)惠活動(dòng)、實(shí)時(shí)新聞、體育賽事、天氣情況、股市行情、好友活動(dòng)、親友生日等。其次,提供虛擬現(xiàn)實(shí)體驗(yàn),手機(jī)可以借助傳感器、周邊設(shè)

10、備了解到您的身邊環(huán)境, 并根據(jù)收集到的信息, 智能的為您提供有用的信息, 如可以在用戶購(gòu)物時(shí), 提供相關(guān) 的同類產(chǎn)品價(jià)格參考, 提醒用戶附近的那個(gè)賣場(chǎng)更物美價(jià)廉; 根據(jù)實(shí)際場(chǎng)景, 為用戶 及時(shí)提供正在操控的產(chǎn)品的使用方法提醒。如今,發(fā)揮物聯(lián)網(wǎng)的優(yōu)勢(shì), 借助無(wú)處不在的傳感器, 可以感知并分享到周圍世界 的海量信息,這些信息將在“云端”得到整合,幫助用戶及時(shí)、準(zhǔn)確的獲得氣息信息、 交通路況。另外借助物聯(lián)網(wǎng),用戶間已經(jīng)可以方便、快速的分享資源,協(xié)助和交互。 如進(jìn)行端到端的照片分享、書(shū)籍分享、音樂(lè)分享等。最后,更加智能、安全的設(shè)備,隨著智能手機(jī)的不斷普及和更加智能,手機(jī)軟件 的更新、 升級(jí)將會(huì)變得越發(fā)

11、簡(jiǎn)單, 并會(huì)為用戶提供工具或信息, 讓用戶有能力和權(quán)力 決策那些內(nèi)容可以瀏覽、下載或分享。 4 在管理性能上也將更加出色,能夠十分有效 的幫助用戶進(jìn)行獲取到的內(nèi)容的管理, 現(xiàn)在更是有了基于手機(jī)的金融活動(dòng), 如電子錢 包、在線支付、在線貿(mào)易等。論文組織結(jié)構(gòu)第 1 章緒論,介紹了課題研究的背景及意義, 對(duì)相關(guān)智能手機(jī)應(yīng)用的現(xiàn)狀進(jìn)行了 分析,提出了要解決的問(wèn)題。第 2 章需求分析,介紹了系統(tǒng)的開(kāi)發(fā)和實(shí)施需求、軟件需求、 硬件需求等,對(duì)系 統(tǒng)的可行性進(jìn)行了分析,給出了系統(tǒng)的設(shè)計(jì)方向。第 3 章概要設(shè)計(jì), 根據(jù)上一章的需求內(nèi)容進(jìn)行系統(tǒng)分析, 設(shè)計(jì)系統(tǒng)框架圖, 描述 了系統(tǒng)開(kāi)發(fā)采用的技術(shù)支持,對(duì)系統(tǒng)的功能

12、模塊和數(shù)據(jù)庫(kù)進(jìn)行了設(shè)計(jì)。第 4 章詳細(xì)設(shè)計(jì),詳細(xì)講解功能模塊的具體實(shí)現(xiàn)第 5 章測(cè)試,通過(guò)測(cè)試展現(xiàn)出系統(tǒng)的優(yōu)缺點(diǎn), 檢測(cè)錯(cuò)誤并修改, 也為后續(xù)的系統(tǒng) 更新做鋪墊。本章小結(jié)本章首先介紹了 Android 智能手機(jī)的發(fā)展歷史,由此提出了手機(jī)助手系統(tǒng)的必 要性,并對(duì)該系統(tǒng)的目的及意義做了分析,最后闡述了 Android 系統(tǒng)在當(dāng)下國(guó)內(nèi)外 的發(fā)展現(xiàn)狀。本章主要是清晰指出本系統(tǒng)要針對(duì)的主要問(wèn)題, 為后續(xù)的開(kāi)發(fā)指明方向。第2章需求分析軟件需求分析就是把軟件計(jì)劃期間建立的軟件可行性分析求精和細(xì)化,分析各種可能的解法,并且分配給各個(gè)軟件元素。需求分析是軟件定義階段中的最后 一步,是確定系統(tǒng)必須完成哪些工作,也

13、就是對(duì)目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、 具體的要求。5需求分析的任務(wù)是確定對(duì)系統(tǒng)的綜合要求,分析系統(tǒng)的數(shù)據(jù)要求,導(dǎo)出系統(tǒng) 的邏輯模型,修正系統(tǒng)的開(kāi)發(fā)計(jì)劃。軟件需求分析過(guò)程所要做的工作是深入描述 軟件的功能和性能,確定軟件設(shè)計(jì)的限制和軟件同其它系統(tǒng)元素的接口細(xì)節(jié),定義軟件的其它有效性需求。2.1概述本章采用軟件工程方法對(duì)手機(jī)助手系統(tǒng)進(jìn)行了需求分析,包括系統(tǒng)目標(biāo)、功能性需求、非功能性需求、數(shù)據(jù)需求。其中將著重介紹功能需求分析和非功能需 求分析,并畫(huà)出功能需求所需的模塊圖。2.2系統(tǒng)目標(biāo)2.2.1總體目標(biāo)計(jì)算機(jī)時(shí)代的到來(lái),為我們帶來(lái)了很多的好處。它是人們的生活變得簡(jiǎn)單,人們的工作效率得到了提高,使人們

14、的生活進(jìn)入一個(gè)新的層次。隨著社會(huì)經(jīng)濟(jì)和 科學(xué)技術(shù)的發(fā)展,手機(jī)得到了更加普遍的應(yīng)用,現(xiàn)在是信息化的時(shí)代,各行各業(yè) 都離不開(kāi)手機(jī),隨著計(jì)算機(jī)的前進(jìn)腳步信息得到了全球化, 使得手機(jī)也跟著進(jìn)入 到了全球化時(shí)代。所以本系統(tǒng)的總體目標(biāo)是為了提高人們的通訊生活質(zhì)量, 為手 機(jī)用戶提供24小時(shí)的應(yīng)用便利。2.2.2具體目標(biāo)系統(tǒng)的具體開(kāi)發(fā)目標(biāo)是為了減少用戶對(duì)于手機(jī)管理的時(shí)間,實(shí)現(xiàn)用戶對(duì)于程序管理的有效性和快捷性要求,滿足用戶對(duì)于使用手機(jī)的一些日常操作功能。系統(tǒng)也將按照用戶的使用習(xí)慣采用簡(jiǎn)潔的操作界面,提高用戶的可操作行。2.3系統(tǒng)可行性分析2.3.1社會(huì)可行性分析目前,基于An droid的手機(jī)軟件有非常廣泛的

15、市場(chǎng)空間,源于使用An droid 系統(tǒng)的手機(jī)用戶基數(shù)非常大。因?yàn)橛泄雀琛⑷A為等多家大型國(guó)際公司的帶頭作用, 使得An droid系統(tǒng)在智能手機(jī)領(lǐng)域內(nèi)有很廣闊的應(yīng)用和發(fā)展前景,An droid系統(tǒng)已經(jīng)成為現(xiàn)在移動(dòng)領(lǐng)域研究的熱點(diǎn)。232技術(shù)可行性分析由于An droid開(kāi)發(fā)是應(yīng)用于當(dāng)前主流編程語(yǔ)言 Java,并且An droid開(kāi)發(fā)具 有開(kāi)源性,這不僅讓開(kāi)發(fā)者可以在統(tǒng)一開(kāi)放平臺(tái)進(jìn)行程序開(kāi)發(fā),而且還可以解決 現(xiàn)今市場(chǎng)不同智能機(jī)之間因文件格式不同而造成的信息交流不便、程序內(nèi)容無(wú)法移植等問(wèn)題。An droid 平臺(tái)是由操作系統(tǒng)、中間件、界面和應(yīng)用軟件組成。是第一個(gè)要 為移動(dòng)終端創(chuàng)造的一款真正開(kāi)放的完整

16、的操作系統(tǒng)。I233經(jīng)濟(jì)可行性分析由于An droid是開(kāi)源軟件,具備開(kāi)發(fā)周期短,程序需求量大,擁有大量的手機(jī)用戶等特點(diǎn),可是給開(kāi)發(fā)者提供良好的環(huán)境和市場(chǎng)。82.4業(yè)務(wù)流程業(yè)務(wù)流程是為達(dá)到特定的價(jià)值目標(biāo)而由不同的人分別共同完成的一系列活 動(dòng)。9活動(dòng)之間不僅有嚴(yán)格的先后順序限定,而且活動(dòng)的內(nèi)容、方式、責(zé)任等也都必須有明確的安排和界定,以使不同活動(dòng)在不同崗位角色之間進(jìn)行轉(zhuǎn)手交接成 為可能?;顒?dòng)與活動(dòng)之間在時(shí)間和空間上的轉(zhuǎn)移可以有較大的跨度。而狹義的業(yè)務(wù)流程,則認(rèn)為它僅僅是與客戶價(jià)值的滿足相聯(lián)系的一系列活動(dòng)。為了更好地描述本系統(tǒng)的業(yè)務(wù)流程, 采用數(shù)據(jù)流圖進(jìn)行描述,它是以圖形方 式來(lái)表達(dá)系統(tǒng)的邏輯功能

17、、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流向和邏輯變換過(guò)程, 可以清 晰的表達(dá)出數(shù)據(jù)流經(jīng)過(guò)的處理和走向。以下是分別針對(duì)黑名單數(shù)據(jù)流和黑名單操作數(shù)據(jù)流的描述和數(shù)據(jù)流圖:當(dāng)用戶手機(jī)來(lái)電時(shí),截取手機(jī)獲取的來(lái)電號(hào)碼,將來(lái)電號(hào)碼數(shù)據(jù)流提交到后 臺(tái)數(shù)據(jù)庫(kù)進(jìn)行校對(duì),返回校對(duì)信息,再根據(jù)校對(duì)信息使手機(jī)對(duì)來(lái)電號(hào)碼進(jìn)行判斷是否屏蔽來(lái)電。黑名單查詢數(shù)據(jù)流圖如圖2-1所示黑名單衣圖2-1黑名單查詢數(shù)據(jù)流圖對(duì)于黑名單操作,接收用戶對(duì)于黑名單的操作信息, 該信息可能為添加、修改或刪除,將操作信息傳遞到數(shù)據(jù)庫(kù)對(duì)數(shù)據(jù)庫(kù)信息進(jìn)行修改。黑名單管理數(shù)據(jù)流圖如圖2-2所示執(zhí)行操件常息圖2-2黑名單管理數(shù)據(jù)流圖2.5功能需求2.5.1功能需求調(diào)查相應(yīng)的

18、功能需求調(diào)查有以下方面。1)流量監(jiān)測(cè)功能隨著手機(jī)功能的不斷完善和3G網(wǎng)絡(luò)的普及,智能手機(jī)已經(jīng)漸漸向網(wǎng)絡(luò)化發(fā) 展,而人們也越來(lái)越依賴于用手機(jī)上網(wǎng)沖浪。在網(wǎng)絡(luò)高度發(fā)達(dá)的今天,人們可以 隨時(shí)隨地的在網(wǎng)上沖浪,但也帶來(lái)了與之共存的缺點(diǎn),那就是流量的快速消耗問(wèn) 題,用戶喜歡流量的透明性,那就是知道軟件的流量消耗情況, 以直觀的變現(xiàn)形 式呈現(xiàn)給用戶,這樣不僅可以方便用戶提前限制不需要聯(lián)網(wǎng)的程序,也可以幫助 用戶更好的規(guī)劃自己的流量使用情況。2)程序鎖功能在日常生活中手機(jī)不可能做到“機(jī)不離身”,可能會(huì)因一些原因而借給別人, 但是如果手機(jī)中還有著一些自己不想讓別人看到而又不舍得刪掉的東西,那就會(huì)讓用戶很為難,

19、于是對(duì)于個(gè)人隱私的保密性也就被許多手機(jī)用戶所提倡。他們希望可以限制某些程序的公開(kāi)性,來(lái)保護(hù)自己的秘密。3)任務(wù)清理功能在使用智能手機(jī)的過(guò)程中,我們不可能每次都一個(gè)個(gè)的去后臺(tái)關(guān)閉不想用的 進(jìn)程,而大量的手機(jī)進(jìn)程在后臺(tái)運(yùn)行又會(huì)影響手機(jī)的響應(yīng)速度,所以批量關(guān)閉后臺(tái)運(yùn)行程序也成為手機(jī)用戶迫切需要的一項(xiàng)功能。4)程序卸載功能隨著時(shí)間的推移,我們會(huì)有越來(lái)越多的軟件供我們使用, 所以在手機(jī)中也將 會(huì)存儲(chǔ)著越來(lái)越多的應(yīng)用軟件,隨著應(yīng)用軟件的更新?lián)Q代,過(guò)去的軟件將不再被 使用,而這些軟件閑置時(shí)還是會(huì)浪費(fèi)一定量的存儲(chǔ)空間。 比起一個(gè)個(gè)的去查找并 卸載軟件,批量卸載是必然使用的優(yōu)質(zhì)選擇。5)黑名單功能在信息化高速發(fā)

20、展的今天,手機(jī)已經(jīng)成為了人們必不可少的通信工具。 但是 手機(jī)給我們帶來(lái)方便的同時(shí),也帶來(lái)了一些讓人煩惱的事情。比如經(jīng)常會(huì)有陌生 人打騷擾電話,經(jīng)常會(huì)在睡夢(mèng)中被手機(jī)鈴聲驚醒, 甚至接到一些詐騙電話,這些 都是讓人難以忍受的,似乎一切都被手機(jī)控制了。所以人們需求自由的來(lái)電拒接 功能。6)病毒查殺功能當(dāng)手機(jī)網(wǎng)絡(luò)普及的同時(shí),人們也發(fā)現(xiàn)了手機(jī)病毒的普及,有些程序會(huì)盜取用 戶的隱私,例如通訊錄、短信等,更嚴(yán)重的則是盜取用戶的賬號(hào)對(duì)用戶造成財(cái)物 上的損失,所以手機(jī)用戶們需要一款安全防護(hù)類的病毒查殺功能。7)清理SD卡緩存功能每當(dāng)我們開(kāi)啟應(yīng)用程序的同時(shí),都會(huì)在 SD中留有緩存,這是為了方便我們 下次能夠更快的

21、啟動(dòng)程序,但是殘留的緩存多了也會(huì)對(duì)手機(jī)整體造成影響, 所以 平時(shí)勤清理緩存會(huì)讓我們的手機(jī)運(yùn)行的更快。8)歸屬地管理功能在接打電話的過(guò)程中,用戶會(huì)存在著對(duì)于一個(gè)不清楚的號(hào)碼是不是長(zhǎng)途的疑 問(wèn),如果在接聽(tīng)和撥打電話時(shí)手機(jī)能夠提示該號(hào)碼的歸屬地,那么用戶將不會(huì)再因不知道號(hào)碼是否是長(zhǎng)途而煩憂。2.5.2用戶功能用例分析用例分析是從用例模型到分析模型的過(guò)程, 是需求與設(shè)計(jì)之間的橋梁。用例 分析把系統(tǒng)的行為分配給分析類,讓分析類交互完成系統(tǒng)的行為。用例圖是表示一組用例、參與者及相互間關(guān)系的圖。一個(gè)用例是系統(tǒng)所執(zhí)行 的一組動(dòng)作的規(guī)范,而動(dòng)作的執(zhí)行將產(chǎn)生一個(gè)可觀察的結(jié)果, 該結(jié)果對(duì)相關(guān)的參 與者具有特殊用途或

22、價(jià)值。用例圖主要描述用例之間、用例與參與者之間的關(guān)系, 還有相關(guān)注解和約束。10手機(jī)助手系統(tǒng)的用例圖如圖2-3所示手機(jī)昉手帝坯O訐理叮隔地A用戶圖2-3手機(jī)助手系統(tǒng)用例圖針對(duì)圖2-3用例圖,對(duì)其中的用例進(jìn)行用例描述,內(nèi)容如表2-1表2-5所示。表2-1監(jiān)測(cè)流量用例用例監(jiān)測(cè)流量啟動(dòng)者用戶支持者手機(jī)助手系統(tǒng)主要流程al用戶點(diǎn)擊流量監(jiān)測(cè)bl系統(tǒng)響應(yīng)進(jìn)入流量監(jiān)測(cè)界面a2用戶點(diǎn)擊流量顯示按鈕b2系統(tǒng)界面顯示系統(tǒng)內(nèi)應(yīng)用的流量消耗列表a3用戶再次點(diǎn)擊流量顯示按鈕b3關(guān)閉系統(tǒng)內(nèi)應(yīng)用的流量消耗列表a3用戶再次點(diǎn)擊流量顯示按鈕b3關(guān)閉系統(tǒng)內(nèi)應(yīng)用的流量消耗列表替代流程無(wú)流量消耗應(yīng)用:當(dāng)系統(tǒng)內(nèi)的應(yīng)用沒(méi)有聯(lián)網(wǎng)功能時(shí),其

23、流量消耗表示為-1。系統(tǒng)規(guī)則BR1 :流量顯示按正常流量消耗和 WIFI流量消耗兩種。BR2:累積所有軟件總流量消耗。表2-2屏蔽黑名單用例描述用例屏蔽黑名單啟動(dòng)者用戶支持者手機(jī)助手系統(tǒng)主要流程al用戶點(diǎn)擊黑名單bl系統(tǒng)響應(yīng)進(jìn)入黑名單界面,并彈出黑名單列表a2用戶點(diǎn)擊黑名單列表中的號(hào)碼b2系統(tǒng)彈出黑名單添加、修改和刪除按鈕a3用戶點(diǎn)擊添加、修改或刪除按鈕b3系統(tǒng)執(zhí)行添加、修改或刪除操作,操作完成后顯示黑名單列表替代流程1 )無(wú)數(shù)據(jù)添加:添加黑名單號(hào)碼為空時(shí),提醒用戶號(hào)碼為空,顯示黑名單列表 界面。2)無(wú)數(shù)據(jù)刪除:當(dāng)刪除黑名單列表中的最后一個(gè)號(hào)碼或黑名單列表為空時(shí)執(zhí)行 刪除操作,會(huì)彈出“該黑名單

24、中無(wú)號(hào)碼,請(qǐng)?zhí)砑印毙畔ⅰO到y(tǒng)規(guī)則BR:添加的黑名單號(hào)碼不能為空。表2-3程序鎖用例描述用例管理程序鎖啟動(dòng)者用戶支持者手機(jī)助手系統(tǒng)主要流程al用戶點(diǎn)擊程序鎖bl系統(tǒng)響應(yīng)進(jìn)入程序鎖界面a2設(shè)置程序鎖密碼b2系統(tǒng)顯示密碼a3在程序列表中選中要鎖定的程序b3鎖定改程序a4進(jìn)入鎖定的程序b4彈出密碼界面a5輸入密碼b5密碼正確,進(jìn)入程序;密碼錯(cuò)誤,無(wú)法進(jìn)入程序替代流程1)未設(shè)置密碼:未設(shè)置密碼而要鎖定程序時(shí),彈出密碼為空信息,程序鎖服務(wù) 無(wú)法開(kāi)啟。2)錯(cuò)誤密碼:輸入錯(cuò)誤密碼無(wú)法進(jìn)入程序,彈出“密碼錯(cuò)誤”信息。系統(tǒng)規(guī)則BR1 :密碼不能為空,且要求為 6位數(shù)字。BR2 :密碼唯一,不可設(shè)置多個(gè)密碼。表2-

25、4清理進(jìn)程用例描述啟動(dòng)者用戶支持者手機(jī)助手系統(tǒng)主要流程al用戶點(diǎn)擊進(jìn)程管理a2選中需要清理的進(jìn)程,點(diǎn)擊清理bl系統(tǒng)響應(yīng)進(jìn)入清理進(jìn)程界面,彈出手機(jī)進(jìn)程列表b2清理選中的進(jìn)程,提示清理的內(nèi)存信息,清理完后顯示進(jìn)程列表用例清理進(jìn)程替代流程清理系統(tǒng)進(jìn)程:清理系統(tǒng)進(jìn)程時(shí),提示該進(jìn)程為系統(tǒng)進(jìn)程,無(wú)法清理系統(tǒng)規(guī)則BR1:不能清理系統(tǒng)進(jìn)程表2-5卸載程序用例描述用例卸載程序啟動(dòng)者用戶支持者手機(jī)助手系統(tǒng)主要流程al用戶點(diǎn)擊程序管理bl系統(tǒng)響應(yīng)進(jìn)入程序管理界面,以列表形式顯示手機(jī)內(nèi)所有應(yīng)用程序a2選中要卸載的程序b2彈出卸載界面,提示是否卸載,是則寫(xiě)在,否則返回bl系統(tǒng)規(guī)則BR1 :不能卸載系統(tǒng)程序。2.6非功能

26、性需求非功能性需求是指依據(jù)一些條件判斷系統(tǒng)運(yùn)作情形或其特性,而不是針對(duì)系統(tǒng)特定行為的需求。包括安全性、可靠性、互操作性、健壯性、易使用性、可維護(hù)性、可移植性、可重用性、可擴(kuò)充性。F面分別介紹一下這些特性,如表2-6表2-6非功能性需求安全性為防止把手機(jī)內(nèi)的信息泄露給無(wú)關(guān)的用戶,必須采取某種安全保密措施,這些措施的有效程序如何就稱為系統(tǒng)的安全性或保密性可靠性元件、產(chǎn)品、系統(tǒng)在一定時(shí)間內(nèi)、在一定條件下無(wú)故障地執(zhí)行指 定功能的能力或可能性??赏ㄟ^(guò)可靠度、失效率、平均無(wú)故障間隔等 來(lái)評(píng)價(jià)產(chǎn)品的可靠性互操作性In teroperability,是指不同的系統(tǒng)、網(wǎng)絡(luò)、操作系統(tǒng)和應(yīng)用程序一起工作并共享信息的

27、能力健壯性健壯性又稱魯棒性,是指軟件對(duì)于規(guī)范要求以外的輸入情況的處 理能力。所謂健壯的系統(tǒng)就是指對(duì)于規(guī)范要求以外的輸入能夠判斷出 這個(gè)輸入不符合規(guī)范要求,并能有合理的處理方式易使用易用性是可用性的一個(gè)重要方面,指的是產(chǎn)品對(duì)用戶來(lái)說(shuō)意味著 J性易于學(xué)習(xí)和使用、減輕記憶負(fù)擔(dān)、使用的滿意程度等可維護(hù)性就是在軟件交付使用之后直至軟件被淘汰的整個(gè)時(shí)期內(nèi)為了改正錯(cuò)誤或滿足新的需求而修改軟件的活動(dòng)可移植性指與軟件從某一環(huán)境轉(zhuǎn)移到另一環(huán)境下的難易程度。為獲得較高的可移植性,在設(shè)計(jì)過(guò)程中常采用通用的程序設(shè)計(jì)語(yǔ)言和運(yùn)行支撐環(huán)可重用性可擴(kuò)充性在環(huán)境和功能發(fā)生變化后,可通過(guò)局部修改和重組,保持整體穩(wěn) 定性,以適應(yīng)新要

28、求的軟件設(shè)計(jì)良好的代碼允許更多的功能在必要時(shí)可以被插入到適當(dāng)?shù)奈?置中。這樣做的目的的是為了應(yīng)對(duì)未來(lái)可能需要進(jìn)行的修改,而造成 代碼被過(guò)度工程化地開(kāi)發(fā)因本手機(jī)助手系統(tǒng)涉及到權(quán)限問(wèn)題,所以應(yīng)該需要滿足安全性、可靠性;考慮到An droid手機(jī)軟件的特性,應(yīng)需滿足易使用性、可移植性、健壯性;考慮到現(xiàn)今軟件的可升級(jí)特性,為了本系統(tǒng)更好的發(fā)展空間,應(yīng)需滿足可維 護(hù)性、可重用性、可擴(kuò)充性。2.7環(huán)境需求1)PC配置:操作系統(tǒng)要求 Windows2007 ,內(nèi)存2G以上,安裝配備Java 開(kāi)發(fā)語(yǔ)言和eclipse開(kāi)發(fā)工具及An droid開(kāi)發(fā)環(huán)境配置。2 )手機(jī)配置:智能 An droid平臺(tái)手機(jī),要求A

29、n droid4.0 以上版本。3)數(shù)據(jù)庫(kù):使用SQLite輕量級(jí)數(shù)據(jù)庫(kù)。2.8未來(lái)功能需求隨著手機(jī)網(wǎng)絡(luò)的普及,手機(jī)軟件的未來(lái)發(fā)展趨勢(shì)必然是網(wǎng)絡(luò)化。所以本系統(tǒng) 將來(lái)的需求會(huì)使用聯(lián)網(wǎng)功能,會(huì)提供熱點(diǎn)搜索以及更換皮膚功能, 使本系統(tǒng)軟件 更加的個(gè)性化。2.9本章小結(jié)本章主要描述了什么是需求分析及需求分析需要完成的任務(wù),分析了手機(jī)助手系統(tǒng)的功能性需求和非功能性需求,并介紹了系統(tǒng)的開(kāi)發(fā)環(huán)境及系統(tǒng)的運(yùn)行環(huán) 境要求。同時(shí)對(duì)系統(tǒng)進(jìn)行了可行性分析,包括社會(huì)可行性、技術(shù)可行性、經(jīng)濟(jì)可 行性。本章主要為了了解系統(tǒng)的基本需求,為系統(tǒng)后期的開(kāi)發(fā)奠定一個(gè)良好的基 礎(chǔ)。第3章系統(tǒng)總體設(shè)計(jì)概要設(shè)計(jì)的主要任務(wù)是把需求分析得到

30、的系統(tǒng)擴(kuò)展用例圖轉(zhuǎn)換為軟件結(jié)構(gòu) 和數(shù)據(jù)結(jié)構(gòu)。設(shè)計(jì)軟件結(jié)構(gòu)的具體任務(wù)是:將一個(gè)復(fù)雜系統(tǒng)按功能進(jìn)行模塊劃分、 建立模塊的層次結(jié)構(gòu)及調(diào)用關(guān)系、確定模塊間的接口及人機(jī)界面等。數(shù)據(jù)結(jié)構(gòu)設(shè) 計(jì)包括數(shù)據(jù)特征的描述、確定數(shù)據(jù)的結(jié)構(gòu)特性、以及數(shù)據(jù)庫(kù)的設(shè)計(jì)。概要設(shè)計(jì)建 立的是目標(biāo)系統(tǒng)的邏輯模型,與計(jì)算機(jī)無(wú)關(guān)。3.1概述在需求分析階段,已經(jīng)對(duì)本項(xiàng)目的需求做了詳細(xì)描述并劃分了層次。 在本章, 會(huì)對(duì)項(xiàng)目進(jìn)行具體的模塊劃分、模塊的設(shè)計(jì)、數(shù)據(jù)庫(kù)的設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)等 一系列工作。即對(duì)有關(guān)系統(tǒng)全局問(wèn)題的設(shè)計(jì), 也就是設(shè)計(jì)系統(tǒng)總的處理方案, 又 稱系統(tǒng)概要設(shè)計(jì)。這一過(guò)程,是為了將需求分析階段的功能實(shí)現(xiàn), 提高系統(tǒng)的可 靠性、

31、安全性、實(shí)用性等。3.2系統(tǒng)原則及方法321原則1)實(shí)用性原則為了能為更多的用戶提供幫助,此次采用 An droid4.0進(jìn)行開(kāi)發(fā),以便能在 更多的手機(jī)上能夠使用本軟件。為了方便用戶的可操作性,本軟件將使用九宮格 格式的功能界面,會(huì)有簡(jiǎn)潔的界面、明確的功能劃分和快速有效的響應(yīng)速度,以便用戶的使用。2)安全可靠性原則由于本軟件是屬于手機(jī)管理類軟件, 將會(huì)需要較多的手機(jī)管理權(quán)限,為保證 用戶的隱私安全,本軟件將嚴(yán)格控制其安全性和保密性, 不會(huì)有任何針對(duì)手機(jī)用 戶的惡意行為,不會(huì)泄露用戶任何的隱私信息。3)界面美觀性和簡(jiǎn)單易學(xué)性原則時(shí)間不管對(duì)于誰(shuí)來(lái)說(shuō)都是寶貴的, 用戶不會(huì)愿意花大量時(shí)間去學(xué)習(xí)使用一款

32、 軟件。而一款軟件如果操作界面不友好, 讓用戶難以上手使用, 那就說(shuō)明這款軟 件開(kāi)發(fā)得不夠成功,從而失去大量的用戶。 所以本項(xiàng)目必須擁有良好的交互界面, 且能讓用戶安裝之后可以快速的熟悉并使用。4)穩(wěn)定性原則 一款軟件如果設(shè)計(jì)得不夠好, 那么就有可能在運(yùn)行的時(shí)候出現(xiàn)一些不可預(yù)料 的錯(cuò)誤從而造成軟件崩潰。 如果用戶在使用的過(guò)程中軟件突然崩潰了, 無(wú)疑會(huì)讓 用戶感到非常不舒服, 有可能就把軟件給卸載了, 這樣也會(huì)流失掉很多用戶。 所 以本軟件將會(huì)在測(cè)試階段嚴(yán)格認(rèn)真的進(jìn)行測(cè)試,杜絕軟件崩潰現(xiàn)象。5)可擴(kuò)展性與可維護(hù)性原則為適應(yīng)軟件行業(yè)的快速發(fā)展, 軟件應(yīng)該具有良好的可擴(kuò)展性和可維護(hù)性。 系 統(tǒng)設(shè)計(jì)盡

33、可能模塊化、組件化,由于 Android 設(shè)備分辨率的各不相同,使軟件 可靈活配置,適應(yīng)不同的 Android 終端設(shè)備。系統(tǒng)的可擴(kuò)展性應(yīng)包括能接納已 有的系統(tǒng)和在今后系統(tǒng)軟硬件擴(kuò)展時(shí), 能有效地保護(hù)已有的資源建設(shè)。 當(dāng)用戶的 需求有所改變時(shí), 可以對(duì)其快速的配置改變, 以應(yīng)對(duì)用戶的需求, 有一個(gè)較好的 應(yīng)用平臺(tái) Android 設(shè)備,能容易地安裝和卸載。系統(tǒng)易于擴(kuò)充升級(jí),既能 滿足當(dāng)前業(yè)務(wù)的需求,將來(lái)的需求改變和軟件升級(jí)也被考慮在內(nèi)。方法“面向?qū)ο蟆?是一種認(rèn)識(shí)客觀世界的世界觀, 是從結(jié)構(gòu)組織角度模擬客觀世 界的一種方法。 11對(duì)象:是事物運(yùn)行方式、處理方法和屬性值的一種抽象表述 12類:是

34、一組具有相同數(shù)據(jù)結(jié)構(gòu)和相同操作的對(duì)象的集合 13 。 面向?qū)ο蠓椒▽W(xué)的出發(fā)點(diǎn)和基本原則是盡可能模擬人類習(xí)慣的思維方式, 使 開(kāi)發(fā)軟件的方法與過(guò)程盡可能接近人類認(rèn)識(shí)世界、 解決問(wèn)題的方法與過(guò)程。 由于 客觀世界的問(wèn)題都是由客觀世界中的實(shí)體及實(shí)體相互間的關(guān)系構(gòu)成的, 因此我們 把客觀世界中的實(shí)體抽象為對(duì)象( Object )。面向?qū)ο蠓椒ǖ乃膫€(gè)要點(diǎn):1)認(rèn)為客觀世界是由各種對(duì)象組成的,任何事物都是對(duì)象,復(fù)雜的對(duì)象可 以由比較簡(jiǎn)單的對(duì)象以某種方式組合而成。2)把所有對(duì)象都劃分成各種對(duì)象類(簡(jiǎn)稱為類 Class),每個(gè)對(duì)象類都定義 了一組數(shù)據(jù)和一組方法,數(shù)據(jù)用于表示對(duì)象的靜態(tài)屬性,是對(duì)象的狀態(tài)信息。3

35、)按照子類(或稱為派生類)與父類(或稱為基類)的關(guān)系,把若干個(gè)對(duì) 象類組成一個(gè)層次結(jié)構(gòu)的系統(tǒng)(也稱為類等級(jí))。4)對(duì)象彼此之間僅能通過(guò)傳遞消息互相聯(lián)系。3.3 系統(tǒng)采用的技術(shù)支持Android 開(kāi)發(fā)環(huán)境介紹Android 是 Google 公司推出的手機(jī)開(kāi)發(fā)平臺(tái), 但此技術(shù)并非 Google 開(kāi)發(fā), 是Google收購(gòu)的An droid技術(shù)。Google與開(kāi)放手機(jī)聯(lián)盟的合作使得 An droid 技術(shù)更加完善。 14雖然 Android 這詞出現(xiàn)才短短幾年,由于它的使用不受專利 限制加上有 Google 強(qiáng)大的技術(shù)支持, Android 已有相當(dāng)大的用戶群, 并在不斷 擴(kuò)大著。Android

36、有豐富的功能,因此很容易與桌面操作系統(tǒng)混淆。 Android 構(gòu)建 在 Linux 內(nèi)核的基礎(chǔ)上, 是一個(gè)分層的環(huán)境, 其操作系統(tǒng)的內(nèi)核與圖形用戶界面 技術(shù)是分開(kāi)的,它非常適合手機(jī)應(yīng)用開(kāi)發(fā)者設(shè)計(jì)及研究的手機(jī)平臺(tái)。此手機(jī)助手軟件的設(shè)計(jì)就是基于 Android 的,我選擇它作為我設(shè)計(jì)的操作 平臺(tái)不僅是因?yàn)樗鼡碛兄捎^的市場(chǎng)前景,它還有著如下優(yōu)點(diǎn):1)是一個(gè)開(kāi)源平臺(tái),模擬器、調(diào)試工具、 SDK 等開(kāi)發(fā)組件都可以在網(wǎng)上免 費(fèi)下載并使用。在網(wǎng)上可以找到豐富的應(yīng)用程序的源碼,對(duì)于 Android 開(kāi)發(fā)的 研究學(xué)習(xí)提供了很大的幫助;2)應(yīng)用程序框架支持組件的重用與替換。這就說(shuō)明了程序開(kāi)發(fā)者可以把系 統(tǒng)中不好

37、或者不喜歡的應(yīng)用程序替換掉, 來(lái)安裝我們自己喜歡的應(yīng)用程序, 如文 件管理器、主界面等等;3)SDK 、ADT 和 DALVIK 虛擬機(jī)都可以集成到 Eclipse 上,方便了開(kāi)發(fā)者 開(kāi)發(fā)程序 15 。如果經(jīng)常用 Eclipse 開(kāi)發(fā) Java 應(yīng)用程序的程序員很容易上手 Android 的開(kāi)發(fā)。已經(jīng)安裝過(guò) JDK 和 Eclipse 的電腦上不需要復(fù)雜的開(kāi)發(fā)環(huán)境 搭建,只要安裝了 SDK 和 Dalvik 就可以開(kāi)發(fā)應(yīng)用程序了;4)DALVIK 專門(mén)為移動(dòng)設(shè)備做了優(yōu)化,它是基于寄存器的,相對(duì)于 Java 虛 擬機(jī)的速度要快。 而且在運(yùn)行是可以設(shè)定手機(jī)硬件虛擬配置 (如屏幕尺寸、 內(nèi)存 大小等

38、),這樣可使開(kāi)發(fā)者設(shè)計(jì)出來(lái)的應(yīng)用程序更具針對(duì)性;5)自帶的 SQLite 數(shù)據(jù)庫(kù)系統(tǒng),它用做結(jié)構(gòu)化的數(shù)據(jù)存儲(chǔ),更適合應(yīng)用與 手機(jī)開(kāi)發(fā)。 16Android SDK 簡(jiǎn)介SDK 是 Software Development Kit 的縮寫(xiě),就是軟件開(kāi)發(fā)工具包。 SDK 是一些特定的軟件包、軟件框架等創(chuàng)建應(yīng)用軟件的開(kāi)發(fā)工具的集合。 AndroidSDK 是跨平臺(tái)的,因?yàn)樗腔诒旧淼讓泳图闪?Linux2.6 作為自己的系統(tǒng)內(nèi) 核。Android 的 SDK 是由 Google 免費(fèi)提供的。 SDK 使得提供應(yīng)用程序接口 API 更為簡(jiǎn)單。 API 是操作系統(tǒng)給應(yīng)用程序的一個(gè)調(diào)用接口,應(yīng)用程序通

39、過(guò)調(diào)用 操作系統(tǒng)的 API 而使操作系統(tǒng)去執(zhí)行應(yīng)用程序的命令。一些不清晰的 API 指定 明確,比如一些與 SQLite 相關(guān)的 API 都被附上了 SQLite 前綴; API 一些命名 風(fēng)格的統(tǒng)一,比如 URI 采用統(tǒng)一的 URI, SDK 采用了統(tǒng)一的 ID ;其他方面, AndroidManifest.xml 中的一些項(xiàng)也是統(tǒng)一的,能夠能容易的被理解。Java 語(yǔ)言Java 是定義位于網(wǎng)絡(luò)計(jì)算的計(jì)算機(jī)語(yǔ)言,它幾乎所有的特點(diǎn)也是圍繞著這 一中心展開(kāi)的并為之服務(wù)的,這些特點(diǎn)使得 Java 語(yǔ)言特別適用于開(kāi)發(fā)網(wǎng)絡(luò)上的 應(yīng)用程序;另外,作為一種面世較晚的語(yǔ)言, Java 也集中體現(xiàn)和充分利用了

40、若 于當(dāng)代軟件技術(shù)新成果, 如面向?qū)ο蟆?多線程等, 這些也都在它的特點(diǎn)中有所反 映。1)平臺(tái)無(wú)關(guān)性:如前所述, Java 語(yǔ)言獨(dú)特的運(yùn)行機(jī)制使得它具有良好的可 移植性,利用Java,開(kāi)發(fā)人員可以編寫(xiě)出與具體平臺(tái)無(wú)關(guān)、普遍適用的應(yīng)用程 序,大大降低了開(kāi)發(fā)、維護(hù)和管理的開(kāi)銷。2)面向?qū)ο螅?Java 是純面向?qū)ο蟮木幊陶Z(yǔ)言。面向?qū)ο蠹夹g(shù)較好地適應(yīng)了 當(dāng)今軟件開(kāi)發(fā)過(guò)程中新出現(xiàn)的種種傳統(tǒng)面向過(guò)程語(yǔ)言所不能處理的問(wèn)題, 包括軟 件開(kāi)發(fā)的規(guī)模擴(kuò)大、 升級(jí)加快、 維護(hù)量增大經(jīng)及開(kāi)發(fā)分工日趨細(xì)化、 專業(yè)化和標(biāo) 準(zhǔn)化等,是一種迅速成熟、 推廣的軟件開(kāi)發(fā)方法。 面向?qū)ο蠹夹g(shù)的核心是以更接 近人類思維的方式建立計(jì)

41、算機(jī)邏輯模型, 它利用類和對(duì)象的機(jī)制將數(shù)據(jù)與其上的 操作封裝在一起, 并通過(guò)統(tǒng)一的接口與外界交互, 使反映現(xiàn)實(shí)世界實(shí)體的各個(gè)類 在程序中能夠獨(dú)立、 自治、繼承;這種方法非常有利于提高程序的可維護(hù)性和可 重用性,大大提高了開(kāi)發(fā)效率和程序的可管理性, 使得面向過(guò)程語(yǔ)言難于操縱的 大規(guī)模軟件可以很方便的創(chuàng)建、使用和維護(hù)。3)多線程機(jī)制:每個(gè)正在系統(tǒng)上運(yùn)行的程序都是一個(gè)進(jìn)程。每個(gè)進(jìn)程包含 一到多個(gè)線程。 進(jìn)程也可能是整個(gè)程序或者是部分程序的動(dòng)態(tài)執(zhí)行。 線程是一組 指令的集合, 或者是程序的特殊段, 它可以在程序里獨(dú)立執(zhí)行。 線程基本上是輕 量級(jí)的進(jìn)程, 它負(fù)責(zé)在單個(gè)程序里執(zhí)行多任務(wù)。 通常由操作系統(tǒng)負(fù)

42、責(zé)多個(gè)線程的 調(diào)度和執(zhí)行。多線程是為了能夠讓多個(gè)線程并行以快速的完成任務(wù), 可以提高系統(tǒng)的執(zhí)行 效率,多線程是在一段時(shí)間內(nèi)需要完成多項(xiàng)任務(wù)的時(shí)候使用。多線程是這樣一種機(jī)制, 它允許在程序中并發(fā)執(zhí)行多個(gè)指令流, 每條指令流 都被稱為一個(gè)線程,彼此間互相獨(dú)立。線程又稱為輕量級(jí)進(jìn)程, 它和進(jìn)程一樣擁有獨(dú)立的執(zhí)行控制, 由操作系統(tǒng)負(fù) 責(zé)調(diào)度,區(qū)別在于線程沒(méi)有獨(dú)立的存儲(chǔ)空間, 而是和所屬進(jìn)程中的其它線程共享 一個(gè)存儲(chǔ)空間,這使得線程間的通信遠(yuǎn)較進(jìn)程簡(jiǎn)單。多個(gè)線程的執(zhí)行是并發(fā)的,也就是在邏輯上的“同時(shí)” ,而不管是否是物理 上的“同時(shí)”。如果系統(tǒng)只有一個(gè)CPU,那么真正的“同時(shí)”是不可能的,但是 由于 C

43、PU 的速度非???,用戶感覺(jué)不到其中的區(qū)別,因此我們也不用關(guān)心它, 只需要設(shè)想各個(gè)線程是同時(shí)執(zhí)行即可。多線程和傳統(tǒng)的單線程在程序設(shè)計(jì)上最大的區(qū)別在于, 由于各個(gè)線程的控制 流彼此獨(dú)立,使得各個(gè)線程之間的代碼是亂序執(zhí)行的,由此將帶來(lái)的線程調(diào)度,同步等問(wèn)題173.4結(jié)構(gòu)設(shè)計(jì)在設(shè)計(jì)一款軟件時(shí)一般都會(huì)把它分成幾個(gè)模塊,在模塊的基礎(chǔ)上還會(huì)再分小 模塊,這樣就達(dá)到了軟件模塊化設(shè)計(jì)的要求, 然后再對(duì)各個(gè)小模塊進(jìn)行詳細(xì)設(shè)計(jì) 和編寫(xiě),采用模塊化的管理方式可以使軟件結(jié)構(gòu)更清晰,也使得軟件的管理更有秩序,使別人容易理解和閱讀,但是這些模塊也要根據(jù)別的模塊來(lái)設(shè)計(jì)和約束, 不能隨便設(shè)計(jì)脫離框架,設(shè)計(jì)完成后需要把每個(gè)設(shè)計(jì)

44、完成的模塊根據(jù)總體框架結(jié) 合起來(lái)。根據(jù)本軟件的功能需求,將本軟件分為8個(gè)功能模塊,把它們整合起來(lái)的整 體框架如圖3-1所示。手機(jī)助手系統(tǒng)住齊管理模塊黑名單理模塊添加黑名單修改黑名單刪除黑名眾圖3-1整體框架圖 啟動(dòng)軟件 軟件管理模塊L卸戴軟件 清理緩存模塊功能模塊設(shè)計(jì)根據(jù)系統(tǒng)整體結(jié)構(gòu)設(shè)計(jì), 把系統(tǒng)的功能劃分為 8 個(gè)模塊,分別為任務(wù)管理模 塊、黑名單管理模塊、流量管理模塊、軟件管理模塊、程序鎖模塊、病毒查殺模 塊、清理緩存模塊、歸屬地管理模塊。模塊功能設(shè)計(jì)以下介紹各個(gè)功能模塊針對(duì)上述功能需求的設(shè)計(jì) 1)流量管理模塊:主要負(fù)責(zé)監(jiān)測(cè)手機(jī)上已安裝的軟件的流量消耗情況,設(shè) 計(jì)會(huì)以數(shù)字的形式返回到前臺(tái)界

45、面顯示。2)程序鎖模塊:主要分為開(kāi)啟 / 取消程序鎖、設(shè)置密碼、選擇鎖定程序三個(gè) 功能模塊。開(kāi)啟 / 取消程序鎖功能模塊是管理程序鎖功能的啟用及關(guān)閉;設(shè)置密 碼功能模塊設(shè)置在進(jìn)入程序時(shí)需要驗(yàn)證的密碼, 也可以在此模塊修改密碼, 密碼 的設(shè)定規(guī)則為六位數(shù)字以內(nèi); 鎖定程序功能模塊設(shè)計(jì)在啟用時(shí)會(huì)調(diào)出手機(jī)內(nèi)的所 有應(yīng)用程序和系統(tǒng)程序, 用戶選中想要鎖定的程序即可, 再次選中則解鎖該程序。3)任務(wù)管理模塊:任務(wù)管理實(shí)現(xiàn)對(duì)系統(tǒng)內(nèi)存中的進(jìn)程進(jìn)行動(dòng)態(tài)監(jiān)控,滿足 用戶對(duì)無(wú)響應(yīng)并占用資源的進(jìn)程進(jìn)行結(jié)束機(jī)制。但不允許用戶結(jié)束系統(tǒng)進(jìn)程。4)軟件管理模塊:系統(tǒng)將會(huì)以列表的形式將系統(tǒng)中的程序全部顯示出來(lái), 用戶可以點(diǎn)擊

46、程序選擇啟動(dòng)或卸載。5)黑名單管理模塊:黑名單管理模塊下又細(xì)分 3 個(gè)小模塊,分別為添加黑 名單、修改黑名單和刪除黑名單模塊。 在手機(jī)被來(lái)電或短信呼叫時(shí), 系統(tǒng)將查詢 黑名單并自動(dòng)判斷屏蔽被添加為黑名單的號(hào)碼。6)病毒查殺模塊:掃描手機(jī)內(nèi)的程序,并與 antivirus 數(shù)據(jù)庫(kù)表核對(duì),如 檢測(cè)出有病毒,則申請(qǐng)權(quán)限殺死該進(jìn)程并刪除該程序7)清理緩存模塊:掃描 SD 卡內(nèi)的緩存,與 clearpath 數(shù)據(jù)庫(kù)表核對(duì),清 理第三方應(yīng)用程序的緩存。8)歸屬地管理管理:在下載手機(jī)號(hào)歸屬地資源后,系統(tǒng)將收集手機(jī)在進(jìn)行 通訊過(guò)程中收到或是撥出的號(hào)碼, 并將收集到的號(hào)碼與歸屬地資源進(jìn)行比對(duì), 從 而在界面上顯

47、示出手機(jī)號(hào)歸屬地。數(shù)據(jù)結(jié)構(gòu)說(shuō)明在本項(xiàng)目中,預(yù)計(jì)將會(huì)多次使用到 List 、Array 等數(shù)據(jù)結(jié)構(gòu)來(lái)存儲(chǔ)臨時(shí)數(shù)據(jù) 和傳遞數(shù)據(jù)。以下簡(jiǎn)單介紹一下這些數(shù)據(jù)結(jié)構(gòu)。List 是個(gè)集合接口, 可以理解為動(dòng)態(tài)數(shù)組, 傳統(tǒng)數(shù)組必須定義好數(shù)組的個(gè)數(shù) 才可以使用,而容器對(duì)象無(wú)須定義好數(shù)組下標(biāo)總數(shù)。用 add ()方法即可添加新 的成員對(duì)象, 他可以添加的僅僅只能為對(duì)象, 不能添加基本數(shù)據(jù)類型, 容器還對(duì) 應(yīng) get (), remove ()方法來(lái)獲取和刪除數(shù)據(jù)成員。只要是集合類接口都會(huì)有 個(gè)“迭代子”,利用這個(gè)迭代子,就可以對(duì) list 內(nèi)存的一組對(duì)象進(jìn)行操作。Array 很簡(jiǎn)單,就是數(shù)組。數(shù)組的實(shí)例被創(chuàng)建之前

48、必須明確指定數(shù)組大小, 然后根據(jù)這個(gè)大小在內(nèi)存中劃分一塊連續(xù)的存儲(chǔ)區(qū)域。 通過(guò)數(shù)組的下標(biāo)可以快速 訪問(wèn)到數(shù)組中的某個(gè)元素,但是數(shù)組的增刪效率相對(duì) List 來(lái)說(shuō)要低很多。數(shù)據(jù)庫(kù)設(shè)計(jì)3.6.1 設(shè)計(jì)原則數(shù)據(jù)庫(kù)設(shè)計(jì)是建立數(shù)據(jù)庫(kù)及應(yīng)用系統(tǒng)的技術(shù), 是系統(tǒng)開(kāi)發(fā)和建設(shè)中的核心技 術(shù),如果一個(gè)數(shù)據(jù)庫(kù)的設(shè)計(jì)沒(méi)有計(jì)劃而全憑直覺(jué), 那最后設(shè)計(jì)出來(lái)的數(shù)據(jù)庫(kù)很可 能不能滿足用戶的要求。 另外數(shù)據(jù)庫(kù)設(shè)計(jì)不周詳而導(dǎo)致的惡果是數(shù)據(jù)庫(kù)中有大量 冗余數(shù)據(jù), 不僅會(huì)產(chǎn)生數(shù)據(jù)異常, 還會(huì)占用不必要的磁盤(pán)空間。 數(shù)據(jù)庫(kù)設(shè)計(jì)是研究數(shù)據(jù)庫(kù)及其應(yīng)用的系統(tǒng)設(shè)計(jì)。數(shù)據(jù)設(shè)計(jì)是指對(duì)于一個(gè)給定的應(yīng)用環(huán)境, 構(gòu)造最優(yōu)數(shù)據(jù)庫(kù)模式,建立數(shù)據(jù)庫(kù)及其應(yīng)用系

49、統(tǒng),使之能夠有效地存儲(chǔ)數(shù)據(jù),滿足各種 用戶的應(yīng)用需求。軟件系統(tǒng)經(jīng)常使用各種長(zhǎng)期保存的信息,這些信息通常以一定方式組織并存 儲(chǔ)在數(shù)據(jù)庫(kù)或文件中,為減小數(shù)據(jù)冗余,避免出現(xiàn)插入異?;騽h除異常,簡(jiǎn)化修 改數(shù)據(jù)的過(guò)程,通常需要把數(shù)據(jù)結(jié)構(gòu)規(guī)范化。362數(shù)據(jù)庫(kù)設(shè)計(jì)前面提到過(guò),在An droid開(kāi)發(fā)中使用的數(shù)據(jù)庫(kù)是SQLite數(shù)據(jù)庫(kù)。那么在程 序開(kāi)發(fā)的過(guò)程中就少不了有關(guān)數(shù)據(jù)庫(kù)的表的編寫(xiě)。以下簡(jiǎn)單介紹幾個(gè)在數(shù)據(jù)庫(kù)中 需要?jiǎng)?chuàng)建的數(shù)據(jù)庫(kù)表。1 )歸屬地信息數(shù)據(jù)庫(kù)設(shè)計(jì)通過(guò)以上分析,歸屬地應(yīng)建立3張數(shù)據(jù)庫(kù)表:號(hào)碼表、城市表、IP撥號(hào)表。 這3張表中包括了歸屬地的所有信息,包含運(yùn)營(yíng)公司信息、省市信息、區(qū)分IP撥號(hào)信息等。

50、下面介紹每張表的結(jié)構(gòu)。表4-1號(hào)碼表字段名稱字段類型字段含義RecNoin teger號(hào)碼編號(hào)、表的主鍵Prefixin teger手機(jī)號(hào)碼的前3位Carriervarchar區(qū)分運(yùn)營(yíng)公司表4-2城市表字段名稱字段類型字段含義idin teger城市編號(hào)、表的主鍵RecNoin teger表的外鍵Codein teger城市的區(qū)號(hào)locati onvarchar城市名稱表4-3 IP撥號(hào)表字段名稱字段類型字段含義RecNoin teger表的主鍵Prefixin tegerIP撥號(hào)前綴2)黑名單信息數(shù)據(jù)庫(kù)設(shè)計(jì)黑名單數(shù)據(jù)庫(kù)比較簡(jiǎn)單,只有一張表來(lái)存放黑名單信息。表的結(jié)構(gòu)如下所示表4-4黑名單表字段

51、名稱字段類型字段含義idin teger黑名單編號(hào)、表的主鍵nu mbervarchar黑名單號(hào)碼3)程序鎖信息數(shù)據(jù)庫(kù)設(shè)計(jì)表4-5程序鎖表字段名稱字段類型字段含義idin teger程序鎖編號(hào)、表的主鍵pack namevarchar程序名稱本章小結(jié)本章解析了系統(tǒng)概要設(shè)計(jì)的設(shè)計(jì)思想, 描述了系統(tǒng)開(kāi)發(fā)所采用的主要技術(shù)支 持,簡(jiǎn)單介紹了功能模塊的設(shè)計(jì)來(lái)源和設(shè)計(jì)思想, 以及設(shè)計(jì)了數(shù)據(jù)庫(kù)表。 本章是 在進(jìn)行實(shí)際開(kāi)發(fā)前的重要環(huán)節(jié), 結(jié)構(gòu)和思想設(shè)計(jì)的好, 才能在開(kāi)發(fā)的后期少出錯(cuò)。第4章系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)詳細(xì)設(shè)計(jì)是軟件工程中軟件開(kāi)發(fā)一個(gè)步驟,就是對(duì)概要設(shè)計(jì)的一個(gè)細(xì)化,就 是詳細(xì)設(shè)計(jì)每個(gè)模塊實(shí)現(xiàn)算法,所需的局

52、部結(jié)構(gòu)。詳細(xì)設(shè)計(jì)的基本任務(wù)包括:1)為每個(gè)模塊進(jìn)行詳細(xì)的算法設(shè)計(jì)。用某種圖形、表格、語(yǔ)言等工具將每 個(gè)模塊處理過(guò)程的詳細(xì)算法描述出來(lái)。2 )為模塊內(nèi)的數(shù)據(jù)結(jié)構(gòu)進(jìn)行設(shè)計(jì)。對(duì)于需求分析、概要設(shè)計(jì)確定的概念性 的數(shù)據(jù)類型進(jìn)行確切的定義。3)為數(shù)據(jù)結(jié)構(gòu)進(jìn)行物理設(shè)計(jì),即確定數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)。物理結(jié)構(gòu)主要指 數(shù)據(jù)庫(kù)的存儲(chǔ)記錄格式、存儲(chǔ)記錄安排和存儲(chǔ)方法,這些都依賴于具體所使用的 數(shù)據(jù)庫(kù)系統(tǒng)。4) 其他設(shè)計(jì):根據(jù)軟件系統(tǒng)的類型,還可能要進(jìn)行代碼設(shè)計(jì)、輸入/輸出格 式設(shè)計(jì)、人機(jī)對(duì)話設(shè)計(jì)等。本章將介紹本系統(tǒng)的各個(gè)模塊的實(shí)現(xiàn)過(guò)程。4.1 An droid 架構(gòu)An droid 的底層建立在Linux系統(tǒng)之上,它采

53、用一種軟件疊層的方式進(jìn)行 構(gòu)建。這種軟件層結(jié)構(gòu)使得層與層之間互相分離,分工明確。保證了層與層之間 的低耦合,當(dāng)下層的層下或者層內(nèi)發(fā)生改變時(shí),上層應(yīng)用程序無(wú)需做任何改變18An droid系統(tǒng)主要由5部分組成:1)應(yīng)用程序?qū)樱ˋpplications )An droid裝配一個(gè)核心應(yīng)用程序集合,包括電子郵件客戶端、SMS程序、日歷、地圖、瀏覽器、聯(lián)系人和其他設(shè)置。所有應(yīng)用程序都是用Java編程語(yǔ)言寫(xiě)的應(yīng)用程序框架( Application Framework)通過(guò)提供開(kāi)放的開(kāi)發(fā)平臺(tái), Android 使開(kāi)發(fā)者能夠編制極其豐富和新穎的 應(yīng)用程序。開(kāi)發(fā)者可以自由地利用設(shè)備硬件優(yōu)勢(shì)、 訪問(wèn)位置信息、運(yùn)

54、行后臺(tái)服務(wù)、 設(shè)置鬧鐘、向狀態(tài)欄添加通知等等,很多很多。開(kāi)發(fā)者可以完全使用核心應(yīng)用程序所使用的框架 APIs 。應(yīng)用程序的體系結(jié) 構(gòu)旨在簡(jiǎn)化組件的重用, 任何應(yīng)用程序都能發(fā)布他的功能且任何其他應(yīng)用程序可 以使用這些功能(需要服從框架執(zhí)行的安全限制) 。這一機(jī)制允許用戶替換組件。所有的應(yīng)用程序其實(shí)是一組服務(wù)和系統(tǒng),包括:視圖(View )豐富的、可擴(kuò)展的視圖集合,可用于構(gòu)建一個(gè)應(yīng)用程序。包括列表、網(wǎng)格、文本框、按鈕,甚至是內(nèi)嵌的網(wǎng)頁(yè)瀏覽器。內(nèi)容提供者(Content Providers )使應(yīng)用程序能訪問(wèn)其他應(yīng)用程序(如通訊錄)的數(shù)據(jù),或共享自己的數(shù)據(jù)資源管理器(Resource Manager

55、 )提供訪問(wèn)非代碼資源,如本地化字符串、圖形和布局文件通知管理器(NotificationManager )使所有的應(yīng)用程序能夠在狀態(tài)欄顯示自定義警告活動(dòng)管理器(Activity Manager)管理應(yīng)用程序生命周期,提供通用的導(dǎo)航回退功能函數(shù)庫(kù)( Libraries )Android 包含一個(gè) C/C+ 庫(kù)的集合, 供 Android 系統(tǒng)的各個(gè)組件使用。 這 些功能通過(guò) Android 的應(yīng)用程序框架( application framework )暴露給開(kāi)發(fā)者。下面列出一些核心庫(kù):系統(tǒng)C庫(kù)一一標(biāo)準(zhǔn)C系統(tǒng)庫(kù)(libc )的BSD衍生,調(diào)整為基于嵌入式Linux 設(shè)備媒體庫(kù)基于 Packet

56、 Video的Open CORE。這些庫(kù)支持播放和錄制許 多流行的音頻和視頻格式, 以及靜態(tài)圖像文件, 包括 MPEG4、 H.264 、MP3 、 AAC 、AMR 、JPG、PNG界面管理管理訪問(wèn)顯示子系統(tǒng)和無(wú)縫組合多個(gè)應(yīng)用程序的二維和三維 圖形層SQLite 所有應(yīng)用程序都可以使用的強(qiáng)大而輕量級(jí)的關(guān)系數(shù)據(jù)庫(kù)引擎19Android 運(yùn)行時(shí)( Android Runtime )Android 包含一個(gè)核心庫(kù)的集合, 提供大部分在 Java 編程語(yǔ)言核心類庫(kù)中 可用的功能。每一個(gè) Android 應(yīng)用程序是 Dalvik 虛擬機(jī)中的實(shí)例,運(yùn)行在他們 自己 的進(jìn)程中。 Dalvik 虛擬機(jī)設(shè)計(jì)成

57、,在一個(gè)設(shè)備可以高效地運(yùn)行多個(gè)虛擬機(jī)。 Dalvik 虛擬機(jī)可執(zhí)行文件格式是 dex , dex 格式是專為 Dalvik 設(shè)計(jì)的一種壓縮 格式,適合內(nèi)存和處理器速度有限的系統(tǒng)。大多數(shù)虛擬機(jī)包括 JVM 都是基于棧的,而 Dalvik 虛擬機(jī)則是基于寄存器的。 兩種架構(gòu)各有優(yōu)劣, 一般而言, 基于棧的機(jī)器需要更多指令, 而基于寄存器的機(jī) 器指令更大。 dx 是一套工具,可以將 Java.class 轉(zhuǎn)換成 .dex 格式。一個(gè) dex 文 件通常會(huì)有多個(gè).class。由于dex有時(shí)必須進(jìn)行最佳化,會(huì)使文件大小增加 1-4 倍,以 ODEX 結(jié)尾。Dalvik 虛擬機(jī)依賴于 Linux 內(nèi)核提供

58、基本功能,如線程和底層內(nèi)存管理Linux 內(nèi)核( Linux Kernel )Android 基于 Linux 2.6 提供核心系統(tǒng)服務(wù),例如:安全、內(nèi)存管理、進(jìn)程 管理、網(wǎng)絡(luò)堆棧、驅(qū)動(dòng)模型。 Linux Kernel 也作為硬件和軟件之間的抽象層,它 隱藏具體硬件細(xì)節(jié)而為上層提供統(tǒng)一的服務(wù)。如果你學(xué)過(guò)計(jì)算機(jī)網(wǎng)絡(luò)知道 OSI/RM ,就會(huì)知道分層的好處就是使用下層提 供的服務(wù)而為上層提供統(tǒng)一的服務(wù), 屏蔽本層及以下層的差異, 當(dāng)本層及以下層 發(fā)生了變化不會(huì)影響到上層。也就是說(shuō)各層各司其職,各層提供固定的 SAP ( Service Access Point ),專業(yè)點(diǎn)可以說(shuō)是高內(nèi)聚、低耦合。S

59、QLite 數(shù)據(jù)庫(kù)作為一個(gè)開(kāi)源的嵌入式數(shù)據(jù)庫(kù)產(chǎn)品, SQLite 具有系統(tǒng)開(kāi)銷小,檢索效率高 的特性,嵌入式數(shù)據(jù)庫(kù)無(wú)須獨(dú)立運(yùn)行的數(shù)據(jù)庫(kù)引擎, 它是由程序直接調(diào)用相應(yīng)的 API 去實(shí)現(xiàn)對(duì)數(shù)據(jù)的存取操作。 更直白的講,嵌入式數(shù)據(jù)庫(kù)是一種具備了基本數(shù) 據(jù)庫(kù)特性的數(shù)據(jù)文件。 嵌入式數(shù)據(jù)庫(kù)與其它數(shù)據(jù)庫(kù)產(chǎn)品的區(qū)別是, 前者是程序驅(qū) 動(dòng)式,而后者是引擎響應(yīng)式。嵌入式數(shù)據(jù)庫(kù)的一個(gè)很重要的特點(diǎn)是體積非常小, 同時(shí),很多嵌入式數(shù)據(jù)庫(kù)在性能上也優(yōu)于其它數(shù)據(jù)庫(kù), 所以在高性能的應(yīng)用上也 常見(jiàn)嵌入式數(shù)據(jù)庫(kù)的身影。SQLite是D 理查德希普開(kāi)發(fā)出來(lái)的用一個(gè)小型C庫(kù) 實(shí)現(xiàn)的一種強(qiáng)有力的嵌入式關(guān)系數(shù)據(jù)庫(kù)管理體制。SQLit

60、e 是無(wú)數(shù)據(jù)類型的數(shù)據(jù)庫(kù)。雖然在生成表結(jié)構(gòu)的時(shí)候,要聲明每個(gè)域 的數(shù)據(jù)類型,但 SQLite 并不做任何檢查。開(kāi)發(fā)人員要靠自己的程序控制輸入與 讀出數(shù)據(jù)的類型是正確的。 這里有一個(gè)例外, 就是當(dāng)主鍵為整型值時(shí), 如果要插 入一個(gè)非整型值時(shí)會(huì)產(chǎn)生異常。 另外,雖然在插入或讀出數(shù)據(jù)的時(shí)候是不區(qū)分類 型的,但在比較的時(shí)候,不同數(shù)據(jù)類型是有區(qū)別的。SQLite提供了對(duì)Transaction的支持。應(yīng)用Transaction即保證了數(shù)據(jù)的完整性,也會(huì)提高運(yùn)行速度,因?yàn)槎鄺l語(yǔ)句一起提交給數(shù)據(jù)庫(kù)的速度會(huì)比一條一 條的提交方式更快。SQLite實(shí)現(xiàn)了完備的、可嵌入的、零配置的 SQL數(shù)據(jù)庫(kù)引擎。它的特點(diǎn)包 括

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論