版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
I基于Android的手機(jī)通訊錄APP用戶界面設(shè)計(jì)目錄TOC\o"1-3"\h\u12910目錄 I6122第一章系統(tǒng)概述 1171541.1Android開發(fā)的背景及意義 1297001.1.1開發(fā)背景 1151821.1.2開發(fā)意義 2171361.2Android通訊錄開發(fā)的目的及環(huán)境 236451.2.1Android通訊錄的開發(fā)目的 2219321.2.2Android通訊錄的開發(fā)環(huán)境 3213871.3Android的優(yōu)勢 311480第二章Android開發(fā)環(huán)境的搭建及技術(shù)支持 4312062.1Android開發(fā)環(huán)境的搭建 4211952.2Android系統(tǒng)架構(gòu) 7264022.2.1應(yīng)用程序 7285392.2.2應(yīng)用程序框架 7243242.2.3系統(tǒng)運(yùn)行庫 8114192.2.4Linux內(nèi)核 934412.3Android開發(fā)的技術(shù)支持 9295842.3.1Java高級開發(fā)語言 914080第三章系統(tǒng)分析 1172183.1系統(tǒng)可行性分析 11274643.1.1技術(shù)可行性 1167713.1.2經(jīng)濟(jì)可行性 11118663.1.3操作可行性 11272333.2需求分析 12315563.2.1系統(tǒng)功能分析 1213605第四章總體設(shè)計(jì) 13203794.1功能結(jié)構(gòu)圖 13160934.2SqLite數(shù)據(jù)庫設(shè)計(jì) 1412376第五章詳細(xì)設(shè)計(jì) 16277955.1瀏覽聯(lián)系人界面 16231795.2查看聯(lián)系人界面 18272925.3查找聯(lián)系人界面 1999015.4編輯修改聯(lián)系人界面 20325395.5電話菜單界面 21第一章系統(tǒng)概述本章主要介紹了Android的開發(fā)背景以及意義,簡單的介紹了Android平臺以及優(yōu)缺點(diǎn),還有此次開發(fā)Android通訊錄的目的以及環(huán)境。1.1Android開發(fā)的背景及意義1.1.1開發(fā)背景Android是一種以Linux為基礎(chǔ)的開放源碼操作系統(tǒng),主要適用于便攜設(shè)備。目前尚未有統(tǒng)一中文名稱,中國大陸地區(qū)較多人使用安卓(非官方)或安致(官方)。Android操作系統(tǒng)最初由AndyRubin開發(fā),最初主要支持手機(jī)。2005年由Google收購注資,并拉攏多家制造商組成開放手機(jī)聯(lián)盟開發(fā)改良,逐漸擴(kuò)展到平板電腦及其他領(lǐng)域上。2010年末數(shù)據(jù)顯示,僅正式推出兩年的操作系統(tǒng)的Android已經(jīng)超越稱霸十年的諾基亞Symbian系統(tǒng),躍居全球最受歡迎的智能手機(jī)平臺。Android的主要競爭對手是蘋果的IOS,微軟的WP7以及RIM的BlackberryOS.Android是一套真正意義上的開放性移動(dòng)設(shè)備綜合平臺,它包括操作系統(tǒng)、中間件和一些關(guān)鍵的平臺應(yīng)用。Android的Java程序運(yùn)行環(huán)境包含一組Java核心函數(shù)庫及虛擬機(jī),它們有效地優(yōu)化了Java程序的運(yùn)行過程。Android系統(tǒng)平臺基于優(yōu)化了的Linux內(nèi)核,它提供諸如內(nèi)存管理、進(jìn)程管理、設(shè)備驅(qū)動(dòng)等服務(wù),同時(shí)也是手機(jī)軟硬件的鏈接層。Android最大特點(diǎn)在于它是一個(gè)開放的體系結(jié)構(gòu),具有非常好的開發(fā)和調(diào)試環(huán)境,而且還支持各種可擴(kuò)展的用戶體驗(yàn),Android里面具有非常豐富的圖形系統(tǒng),多媒體的支持功能和非常強(qiáng)大的瀏覽器。根據(jù)市場研究公司Gartner的統(tǒng)計(jì)數(shù)據(jù)顯示,2010年第二季度,谷歌Android移動(dòng)操作系統(tǒng)的市場份額上升至17.2%,成功取代蘋果iOS晉升為全球第三大移動(dòng)操作系統(tǒng)。在移動(dòng)操作系統(tǒng)市場中,排名第一和第二的是諾基亞的Symbian和RIM的黑莓,二者的市場份額分別為41.2%和18.2%。與此同時(shí),應(yīng)用于蘋果iPhone和其他蘋果移動(dòng)設(shè)備的iOS的市場份額則出現(xiàn)下滑,跌至14.2%。在2010年第二季度一系列最新智能手機(jī)發(fā)布以后,Android操作系統(tǒng)在美國個(gè)人消費(fèi)者市場上銷售的所有智能手機(jī)中份額為33%,超過RIM的28%和蘋果的22%基于Android系統(tǒng)的智能手機(jī)已經(jīng)進(jìn)入到強(qiáng)勁的增長期,Android第二季度在美國市場上的銷售量同比大幅增長886%;尼爾森公布報(bào)告稱,Android手機(jī)銷售量已經(jīng)超過了iPhone銷售量。1.1.2開發(fā)意義智能手機(jī)和移動(dòng)網(wǎng)絡(luò)的發(fā)展使人與人之間隨時(shí)隨地都能自由的溝通交流,從最初的書信交流到現(xiàn)在的動(dòng)幾下手指,便利的同時(shí)也讓溝通的方式越來越豐富有趣。Android智能手機(jī)是當(dāng)前市場上的熱門產(chǎn)品,充滿活力的新產(chǎn)品。開放的Android系統(tǒng)給了用戶和開發(fā)者更多的創(chuàng)新空間,隨著Android的快速發(fā)展,如今已允許開發(fā)者使用多種編程語言來開發(fā)Android應(yīng)用程序,而不再是以前只能使用Java開發(fā)Android應(yīng)用程序的單一局面,因而受到眾多開發(fā)者的歡迎。手機(jī)通訊錄作為手機(jī)的基本功能之一,每天我們都在頻繁的使用著,根據(jù)手機(jī)功能調(diào)查顯示,有9成以上的消費(fèi)者使用手機(jī)通訊錄功能。隨著手機(jī)通訊錄功能的不斷加強(qiáng)與完善,手機(jī)通訊錄對人們的意義,已不僅僅像記事薄一樣顯示通訊地址,而是想著個(gè)性化、人性化的方向發(fā)展。通訊錄從無到有,從英文到中文,經(jīng)過了十幾年的發(fā)展力歷程今后的發(fā)展趨勢就是從通訊錄發(fā)展為名片夾,也就是一個(gè)人名下,可以存儲座機(jī)、手機(jī)、單位、地址、電子郵件等內(nèi)容。這種名片夾在電話薄的基礎(chǔ)上,大大豐富了內(nèi)容,同時(shí)結(jié)構(gòu)也發(fā)生了革命性變化,作為手機(jī)的必備功能,通訊錄的客戶體驗(yàn)度在部分程度上決定了一款手機(jī)的受歡迎程度,間接的反映出手機(jī)的好壞。因此,Android通訊錄的開發(fā)受到眾多移動(dòng)廠商開發(fā)者的注目。1.2Android通訊錄開發(fā)的目的及環(huán)境1.2.1Android通訊錄的開發(fā)目的通過android模擬器,將用eclipse編寫的android通訊錄項(xiàng)目進(jìn)行實(shí)現(xiàn),要求實(shí)現(xiàn)增刪改查的功能,從而進(jìn)一步的了解android開發(fā)的相關(guān)知識,為今后的開發(fā)學(xué)習(xí)打下良好的基礎(chǔ)。1.2.2Android通訊錄的開發(fā)環(huán)境編程開發(fā)環(huán)境為Eclipse3.6+AndroidSDK集成環(huán)境,采用Java高級語言編寫,使用android模擬器進(jìn)行項(xiàng)目的測試與實(shí)現(xiàn)。1.3Android的優(yōu)勢1.開放性手機(jī)平臺Android是Google開發(fā)的基于Linux平臺的開源手機(jī)操作系統(tǒng)。Google通過與運(yùn)營商、設(shè)備制造商、手機(jī)公司和其他有關(guān)各方結(jié)成深層次的合作伙伴關(guān)系,希望借助建立標(biāo)準(zhǔn)化、開放式的智能手機(jī)操作系統(tǒng),在移動(dòng)產(chǎn)業(yè)內(nèi)形成一個(gè)開放式的生態(tài)系統(tǒng)。2.網(wǎng)絡(luò)集成性很高Android內(nèi)部集成了大量的google應(yīng)用,如Gmail、Reader、Map、Docs、Youtube等等,涵蓋了生活中各個(gè)方面的網(wǎng)絡(luò)應(yīng)用,對長期使用網(wǎng)絡(luò)、信息依賴比較高的人群很合適。3.Android具備創(chuàng)新性自從Google開發(fā)出Android后,許多人認(rèn)為其技術(shù)可信度要比其它操作系統(tǒng)略勝一籌,但這并不是用戶購買Android智能手機(jī)的唯一原因。人們認(rèn)為Android是一種相對較新的、又較為成熟的技術(shù),在達(dá)到巔峰之前還有很大發(fā)展空間。4.Android平臺在數(shù)量上逐漸主宰市場GoogleCEO埃里克·施密特2010年8月初曾表示每天出售20萬部Android手機(jī),第三方調(diào)查顯示該平臺發(fā)展勢頭正穩(wěn)步增長。據(jù)市場分析機(jī)構(gòu)NPD發(fā)布的數(shù)據(jù)顯示,今年4-6月份發(fā)售的智能手機(jī)中,33%為Android手機(jī),而RIM手機(jī)發(fā)售比例為28%,iPhone為22%。5.Android在其他領(lǐng)域的拓展Android不僅促進(jìn)了手機(jī)產(chǎn)業(yè)的發(fā)展,它的全面計(jì)算服務(wù)和豐富的功能支持,已將應(yīng)用拓展到手機(jī)以外的其他領(lǐng)域。Android平臺的通用性可以適用于不同的屏幕、有線和無線設(shè)備。Android系統(tǒng)和應(yīng)用程序開發(fā)人員將更多的涉足多媒體、移動(dòng)互聯(lián)網(wǎng)設(shè)備、數(shù)字視頻和家庭娛樂設(shè)備、汽車、醫(yī)藥、網(wǎng)絡(luò)、監(jiān)測儀器和工業(yè)管理、機(jī)頂盒等領(lǐng)域。第二章Android開發(fā)環(huán)境的搭建及技術(shù)支持本章主要介紹了一些關(guān)于Android開發(fā)所必要的先前準(zhǔn)備與一些必備知識,如何的去搭建開發(fā)環(huán)境,選擇Java高級語言編寫,以及開發(fā)所需要的技術(shù)支持。2.1Android開發(fā)環(huán)境的搭建安裝Eclipse/download.php?file=/technology/epp/downloads/release/helios/SR2/eclipse-java-helios-SR2-win32.zip。下載“EclipseIDEforJavaDevelopers(92MB)”,得到eclipse-java-galileo-SR1-win32.zip,解壓到某目錄下,如D:\eclipse,運(yùn)行其下的“eclipse。exe”,初次運(yùn)行要設(shè)置一下存放程序的目錄,如D:\eclipse_workplace。安裝AndroidSDK到Android主頁下載androidSDK,將其解壓到某目錄下,如D:\android-sdk-windows,然后設(shè)置黃精變量,右擊“我的電腦”|“屬性”|“高級”|“環(huán)境變量”,在系統(tǒng)變量的path變量前加上D:\android-sdk-windos\tools;新版的SDK還需要手動(dòng)下載Platform,運(yùn)行D:\android-sdk-windows下SDKManager.exe,如果它提示https不可用,則將settings里的“Forcehttps://...sourcestobefetchedusinghttp://...”這一項(xiàng)懸賞,然后選擇左邊“AvaliablePackages”,再選擇一個(gè)SDKPlatform,如“SDKPlatformAndroid2.2,API8,revision1”,安裝。如圖2.1VirtualDevice:圖2.1VirtualDevice3.創(chuàng)建AVD(AndroidVirtualDevice)AVD是PC種的虛擬Android手機(jī)設(shè)備,新版SDK需手動(dòng)添加AVD,進(jìn)入SDK目錄,如D:\android-sdk-windows,運(yùn)行SDKManager.exe,點(diǎn)擊左邊欄“VirtualDevices”,右邊點(diǎn)“New”,彈出創(chuàng)建對話框,給這個(gè)SVD隨便取個(gè)Name,比如手機(jī)型號HERO,然后設(shè)置Target為某個(gè)Android版本,SDCard為虛擬的SVD的SD卡容量,再設(shè)置分辨率,如320*480,然后在Hardware添加這臺AVD需要的特殊設(shè)備,如鍵盤KeyBoard等,最后點(diǎn)下面“CreateAVD”完成。如圖2.2Settings:圖2.2Settings4.安裝ADT(AndroidDevelopmentTools)不同Eclipse版本對此設(shè)置可能不同,運(yùn)行Eclipse|"Help"|"InstallNewSoftware",在Workwith處填入"/Android/eclipse/",然后下面會出現(xiàn)“AndroidDDSM”和“AndroidDevelopmentTools”,選擇者兩項(xiàng),然后next,最后accept,完成。接著就等它自動(dòng)下載安裝,這過程很久,如果出現(xiàn)什么是否繼續(xù)安裝對話框,點(diǎn)繼續(xù),安裝完成后重啟Eclipse。5.在eclipse中配置AndroidSDKLocation參數(shù)運(yùn)行Eclipse,菜單欄“Window”|“Preference”,左邊欄點(diǎn)擊“Android”郵編SDKLocation跳上上面第2步SDK位置,如D:\android-sdk-windows,點(diǎn)Apply,選擇一個(gè)Platform,完成。如圖2.3RunConfigurations:如圖2.3RunConfigurations6.設(shè)置Eclipse中AVD運(yùn)行Eclipse,菜單欄“Run”|“RunConfigurations”,選擇AndroidApplication,選擇一個(gè)configuration,右側(cè)選擇“Target”,再選擇一個(gè)AVD即可。如圖2.4:Android版本。圖2.4Android版本7.運(yùn)行運(yùn)行Eclipse,菜單欄“File”|“File”|“Project”,選擇“Android”|“AndroidProject”,如果建立此項(xiàng)目后Eclipse沒有列出次項(xiàng)目,這是因?yàn)闆]有設(shè)置其顯示,在菜單欄“Window”|“ShowView”里選擇如PackageExplorer等。然后左側(cè)的PackageExplorer里右鍵剛剛建立的項(xiàng)目TestDemo,選擇最后一個(gè)“Properties”,再選擇“Run/DebugSettings”,在右側(cè)“New”添加“AndroidJUnitTest”,在彈出的設(shè)置里,選擇標(biāo)簽“Target”,再選擇一個(gè)AVD,完成。最后,左側(cè)的PackageExplorer里右鍵點(diǎn)擊項(xiàng)目TestDemo,選擇“RunAs”|“AndroidApplication”,看到一臺虛擬的Android手機(jī)啟動(dòng)就成功啦。2.2Android系統(tǒng)架構(gòu)Android系統(tǒng)架構(gòu)和其操作系統(tǒng)一樣,采用了分層的架構(gòu)。Android分為四個(gè)層,從高層到低層分別是應(yīng)用程序?qū)?、?yīng)用程序框架層、系統(tǒng)運(yùn)行庫層和linux核心層。2.2.1應(yīng)用程序Android會同一系列核心應(yīng)用程序包一起發(fā)布,該應(yīng)用程序包包括email客戶端,SMS短消息程序,日歷,地圖,瀏覽器,聯(lián)系人管理程序等。所有的應(yīng)用程序都是使用JAVA語言編寫的。2.2.2應(yīng)用程序框架開發(fā)人員也可以完全訪問核心應(yīng)用程序所使用的API框架。該應(yīng)用程序的架構(gòu)設(shè)計(jì)簡化了組件的重用;任何一個(gè)應(yīng)用程序都可以發(fā)布它的功能塊并且任何其它的應(yīng)用程序都可以使用其所發(fā)布的功能塊(不過得遵循框架的安全性限制)。同樣,該應(yīng)用程序重用機(jī)制也使用戶可以方便的替換程序組件。隱藏在每個(gè)應(yīng)用后面的是一系列的服務(wù)和系統(tǒng),其中包括:1.豐富而又可擴(kuò)展的視圖(Views),可以用來構(gòu)建應(yīng)用程序,它包括列表(lists),網(wǎng)格(grids),文本框(textboxes),按鈕(buttons),甚至可嵌入的web瀏覽器。2.內(nèi)容提供器(ContentProviders)使得應(yīng)用程序可以訪問另一個(gè)應(yīng)用程序的數(shù)據(jù)(如聯(lián)系人數(shù)據(jù)庫),或者共享它們自己的數(shù)據(jù)3.資源管理器(ResourceManager)提供非代碼資源的訪問,如本地字符串,圖形,和布局文件(layoutfiles)。4.通知管理器(NotificationManager)使得應(yīng)用程序可以在狀態(tài)欄中顯示自定義的提示信息。5.活動(dòng)管理器(ActivityManager)用來管理應(yīng)用程序生命周期并提供常用的導(dǎo)航回退功能。有關(guān)更多的細(xì)節(jié)和怎樣從頭寫一個(gè)應(yīng)用程序,請參考如何編寫一個(gè)Android應(yīng)用程序.。2.2.3系統(tǒng)運(yùn)行庫1.程序庫Android包含一些C/C++庫,這些庫能被Android系統(tǒng)中不同的組件使用。它們通過Android應(yīng)用程序框架為開發(fā)者提供服務(wù)。以下是一些核心庫:1)系統(tǒng)C庫-一個(gè)從BSD繼承來的標(biāo)準(zhǔn)C系統(tǒng)函數(shù)庫(libc),它是專門為基于embeddedlinux的設(shè)備定制的。2)媒體庫-基于PacketVideoOpenCORE;該庫支持多種常用的音頻、視頻格式回放和錄制,同時(shí)支持靜態(tài)圖像文件。編碼格式包括MPEG4,H.264,MP3,AAC,AMR,JPG,PNG。3)SurfaceManager-對顯示子系統(tǒng)的管理,并且為多個(gè)應(yīng)用程序提供了2D和3D圖層的無縫融合。4)LibWebCore-一個(gè)最新的web瀏覽器引擎用,支持Android瀏覽器和一個(gè)可嵌入的web視圖。5)SGL-底層的2D圖形引擎6)3Dlibraries-基于OpenGLES1.0APIs實(shí)現(xiàn);該庫可以使用硬件3D加速(如果可用)或者使用高度優(yōu)化的3D軟加速。7)FreeType-位圖(bitmap)和矢量(vector)字體顯示。8)SQLite-一個(gè)對于所有應(yīng)用程序可用,功能強(qiáng)勁的輕型關(guān)系型數(shù)據(jù)庫引擎。2.Android運(yùn)行庫Android包括了一個(gè)核心庫,該核心庫提供了JAVA編程語言核心庫的大多數(shù)功能。每一個(gè)Android應(yīng)用程序都在它自己的進(jìn)程中運(yùn)行,都擁有一個(gè)獨(dú)立的Dalvik虛擬機(jī)實(shí)例。Dalvik被設(shè)計(jì)成一個(gè)設(shè)備可以同時(shí)高效地運(yùn)行多個(gè)虛擬系統(tǒng)。Dalvik虛擬機(jī)執(zhí)行(.dex)的Dalvik可執(zhí)行文件,該格式文件針對小內(nèi)存使用做了優(yōu)化。同時(shí)虛擬機(jī)是基于寄存器的,所有的類都經(jīng)由JAVA編譯器編譯,然后通過SDK中的“dx”工具轉(zhuǎn)化成.dex格式由虛擬機(jī)執(zhí)行。Dalvik虛擬機(jī)依賴于linux內(nèi)核的一些功能,比如線程機(jī)制和底層內(nèi)存管理機(jī)制。2.2.4Linux內(nèi)核Android的核心系統(tǒng)服務(wù)依賴于Linux2.6內(nèi)核,如安全性,內(nèi)存管理,進(jìn)程管理,網(wǎng)絡(luò)協(xié)議棧和驅(qū)動(dòng)模型。Linux內(nèi)核也同時(shí)作為硬件和軟件棧之間的抽象層。2.3Android開發(fā)的技術(shù)支持2.3.1Java高級開發(fā)語言Java是一種簡單的、面向?qū)ο蟮?、分布式的、解釋的、健壯的安全的、結(jié)構(gòu)的中立的、可移植的,性能很優(yōu)異的多線程的動(dòng)態(tài)的語言。Java開發(fā)的開發(fā)環(huán)境有不同的版本,如sun公司的JavaDevelopersKit,簡稱JDK。后來微軟公司推出了支持Java規(guī)范的MicrosoftVisualJ++Java開發(fā)環(huán)境,簡稱VJ++。Java的特點(diǎn):平臺無關(guān)性平臺無關(guān)性是指Java能運(yùn)行于不同的平臺。Java引進(jìn)虛擬機(jī)原理,并運(yùn)行于虛擬機(jī),實(shí)現(xiàn)不同平臺的Java接口之間。使用Java編寫的程序能在世界范圍內(nèi)共享。Java的數(shù)據(jù)類型與機(jī)器無關(guān),Java虛擬機(jī)(JavaVirtualMachine)是建立在硬件和操作系統(tǒng)之上,實(shí)現(xiàn)Java二進(jìn)制代碼的解釋執(zhí)行功能,提供于不同平臺的接口的。安全性Java舍棄了C++的指針對存儲器地址的直接操作,程序運(yùn)行時(shí),內(nèi)存由操作系統(tǒng)分配,這樣可以避免病毒通過指針侵入系統(tǒng)。Java對程序提供了安全管理器,防止程序的非法訪問呢。面向?qū)ο驤ava吸收了C++面向?qū)ο蟮母拍?,將?shù)據(jù)封裝于類中,利用類的優(yōu)點(diǎn),實(shí)現(xiàn)了程序的簡潔性和便于維護(hù)性。類的封裝性、繼承性等有關(guān)對象的特性,使程序代碼只需一次編譯,然后通過上述特性反復(fù)利用。程序員只需把主要精力用在類和接口的設(shè)計(jì)和應(yīng)用上。Java提供了眾多的一般對象的類,通過繼承即可使用父類的方法。分布式Java建立在擴(kuò)展TCP/IP網(wǎng)絡(luò)平臺上。庫函數(shù)提供了HTTP和FTP協(xié)議傳送和接受信息的方法。這使得程序員使用網(wǎng)絡(luò)上的文件盒使用本機(jī)文件一樣容易。健壯性Java致力于檢查程序在編譯和運(yùn)行時(shí)的錯(cuò)誤。類型檢查幫助檢查出許多開發(fā)早期出現(xiàn)的錯(cuò)誤。Java自己操縱內(nèi)存減少了內(nèi)存出錯(cuò)的可能性。Java還實(shí)現(xiàn)了真數(shù)組,避免了覆蓋數(shù)據(jù)的可能。這些功能特征大大提高了開發(fā)Java應(yīng)用程序的周期。第三章系統(tǒng)分析本章主要介紹Android通訊錄開發(fā)的可行性依據(jù),以及Android通訊錄相關(guān)的功能需求介紹。3.1系統(tǒng)可行性分析3.1.1技術(shù)可行性Android的系統(tǒng)架構(gòu)和其它操作系統(tǒng)一樣,采用了分層的架構(gòu)。android分為四個(gè)層,從高層到低層分別是應(yīng)用程序?qū)?、?yīng)用程序框架層、系統(tǒng)運(yùn)行庫層和Linux核心層。Android是以Linux為核心的手機(jī)操作平臺,作為一款開放式的操作系統(tǒng),通過Eclipse3.6+AndroidSDK集成環(huán)境,以Java高級語言進(jìn)行編譯,通過Android模擬器就可以完成通訊錄的實(shí)現(xiàn),因此技術(shù)上可行。3.1.2經(jīng)濟(jì)可行性開發(fā)所需的相關(guān)資料可以通過已存在的相關(guān)系統(tǒng)進(jìn)行調(diào)查采集,所需的軟件系統(tǒng)、硬件平臺等都易于獲得,且不需要Android平臺機(jī)器,用模擬器即可實(shí)現(xiàn)開發(fā)研究,開發(fā)成本低,容易實(shí)現(xiàn),從經(jīng)濟(jì)角度上看可行。3.1.3操作可行性Android通訊錄既可以在Android手機(jī)上實(shí)現(xiàn),也可以在模擬器上實(shí)現(xiàn),實(shí)現(xiàn)方便,系統(tǒng)是利用自己的計(jì)算機(jī),使用Android模擬器,并在本地上安裝JDK、Android跟Eclipse作為軟件的開發(fā)平臺,使開發(fā)出來的系統(tǒng)有很方便地用戶界面、操作起來就像使用手機(jī)一樣,操作簡單,因此在操作上是可行的。3.2需求分析3.2.1系統(tǒng)功能分析新用戶的添加功能對于新的聯(lián)系人,手機(jī)用戶可以添加新聯(lián)系人的頭像、姓名、手機(jī)號碼、家庭號碼、辦公室號碼、職務(wù)名稱、單位名稱、地址、郵政編碼、Email\其他聯(lián)系方式,備注這些信息。查找聯(lián)系人可以輸入聯(lián)系人名字或者手機(jī)來查找聯(lián)系人的信息,使用模糊查找,并不需要寫全名或是完整的電話號碼,系統(tǒng)會自動(dòng)匹配聯(lián)系人信息與所查信息,方便用戶快速找到聯(lián)系人,查詢結(jié)果顯示在聯(lián)系人瀏覽界面中。刪除聯(lián)系人在聯(lián)系人瀏覽界面,左鍵選中所要?jiǎng)h除的聯(lián)系人,然后點(diǎn)擊刪除按鈕,該聯(lián)系人則被刪除,另外還可一在菜單按鈕中選擇刪除所有按鈕,一次性清空聯(lián)系人列表。修改聯(lián)系人進(jìn)入查看聯(lián)系人界面,點(diǎn)擊修改按鈕,進(jìn)入編輯狀態(tài),則可以重新編輯聯(lián)系人信息。修改過后點(diǎn)擊保存修改,則修改完成。打電話、發(fā)短信在查看聯(lián)系人界面中,點(diǎn)擊MENU菜單,會跳出打電話,發(fā)短信,發(fā)郵件的選擇菜單,如果該聯(lián)系人有多個(gè)聯(lián)系方式,那么在給該聯(lián)系人打電話的時(shí)候會出現(xiàn)一個(gè)選擇電話號碼的界面,選擇要聯(lián)系的電話號碼,就會跳出電話連接的狀態(tài)。發(fā)短信會跳出一個(gè)EditView視圖制作的輸入框,輸入所要發(fā)送的信息內(nèi)容,點(diǎn)擊Send發(fā)送。聯(lián)系人備份,還原在菜單按鈕中有備份數(shù)據(jù)這一按鈕,可以將當(dāng)前所有的聯(lián)系人信息備份保存在SD卡中。當(dāng)聯(lián)系人信息不小心被刪除后,可以通過另一按鈕還原數(shù)據(jù)來還原聯(lián)系人,給用戶帶來方便??傮w設(shè)計(jì)本章主要涵蓋了系統(tǒng)的功能結(jié)構(gòu)圖以及SQLite數(shù)據(jù)庫設(shè)計(jì)。4.1功能結(jié)構(gòu)圖Android手機(jī)通訊管理軟件主要功能包括:聯(lián)系人添加、聯(lián)系人查看、聯(lián)系人編輯、聯(lián)系人刪除,聯(lián)系人查找,打電話,發(fā)短信等如圖4.1功能結(jié)構(gòu)圖所示?;贏ndroid系統(tǒng)的通訊錄基于Android系統(tǒng)的通訊錄其他功能分組功能刪除聯(lián)系人修改聯(lián)系人新增聯(lián)系人查找聯(lián)系人其他功能分組功能刪除聯(lián)系人修改聯(lián)系人新增聯(lián)系人查找聯(lián)系人刪除分組分享發(fā)短信打電話移動(dòng)分組修改頭像修改信息修改分組新建分組刪除分組分享發(fā)短信打電話移動(dòng)分組修改頭像修改信息修改分組新建分組圖4.1功能結(jié)構(gòu)圖4.2SqLite數(shù)據(jù)庫設(shè)計(jì)SQLite,是一款輕型的數(shù)據(jù)庫。SQLite的主要設(shè)計(jì)目標(biāo)是嵌入式軟件,因而占用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。它能夠支持Windows/Linux/Unix等等主流的操作系統(tǒng),同時(shí)能夠跟很多程序語言相結(jié)合,比如Rel、C#、PHP、Java等,并且SQLite的處理速度很快。Android程序可以使用SQLite來存儲結(jié)構(gòu)化的數(shù)據(jù)。SQLite所支持的數(shù)據(jù)類型:
SQLite,SQLite3支持NULL、INTEGER、REAL(浮點(diǎn)數(shù)字)、TEXT(字符串文本)和BLOB(二進(jìn)制對象)數(shù)據(jù)類型,雖然它支持的類型只有五種,但實(shí)際上sqlite3也接受varchar(n)、char(n)、decimal(p,s)等數(shù)據(jù)類型,只不過在運(yùn)算或保存時(shí)會轉(zhuǎn)成對應(yīng)的五種數(shù)據(jù)類型。
SQLite最大的特點(diǎn)是你可以把各種類型的數(shù)據(jù)保存到任何字段中,而不用關(guān)心字段聲明的數(shù)據(jù)類型是什么。例如:可以在Integer類型的字段中存放字符串,或者在布爾型字段中存放浮點(diǎn)數(shù),或者在字符型字段中存放日期型值。但有一種情況例外:定義為INTEGERPRIMARYKEY的字段只能存儲64位整數(shù),當(dāng)向這種字段保存除整數(shù)以外的數(shù)據(jù)時(shí),將會產(chǎn)生錯(cuò)誤。另外,SQLite在解析CREATETABLE語句時(shí),會忽略CREATETABLE語句中跟在字段名后面的數(shù)據(jù)類型信息。Android通訊錄主要的數(shù)據(jù)庫表是user表:如表4-1user表:表4-1user表屬性數(shù)據(jù)類型說明_idinteger聯(lián)系人IDnamestring姓名mobilephonestring手機(jī)號碼officephonestring公司電話familyphonestring家庭電話addressstring地址othercontactstring其他聯(lián)系方式emailstring電子信箱positionstring職位名稱companystring公司名稱zipcodestring郵編remarkstring備注imageidint頭像ID第五章詳細(xì)設(shè)計(jì)本章主要介紹了Android通訊錄的部分工作界面,以及對各個(gè)界面操作所產(chǎn)生的結(jié)果,并附出相關(guān)截圖,從而了解此次設(shè)計(jì)。5.1瀏覽聯(lián)系人界面進(jìn)入手機(jī)通訊錄管理軟件后,看到的第一個(gè)界面是聯(lián)系人列表界面。該列表時(shí)由RelativeLayout控件生成的,打開數(shù)據(jù)庫(如果數(shù)據(jù)庫不存在則創(chuàng)建數(shù)據(jù)庫,并創(chuàng)建數(shù)據(jù)表contacts),查找數(shù)據(jù)庫中所有的聯(lián)系人,并把聯(lián)系人name和mobilephone這兩項(xiàng)填充到中TextView中。聯(lián)系人瀏
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 漢江師范學(xué)院藝術(shù)學(xué)院2025-2026學(xué)年第二學(xué)期外聘教師招聘備考題庫及一套參考答案詳解
- 2025年四川天府新區(qū)實(shí)驗(yàn)中學(xué)教師招聘14人備考題庫及一套完整答案詳解
- 2025年湖南工商大學(xué)第二次公開招聘21人備考題庫含答案詳解
- 2025年人和中學(xué)招聘非編教師備考題庫完整答案詳解
- 2025年東莞市望牛墩鎮(zhèn)紀(jì)檢監(jiān)察辦公開招聘紀(jì)檢審計(jì)員(專業(yè)技術(shù)人才聘員)的備考題庫及答案詳解參考
- 2025年上海應(yīng)用技術(shù)大學(xué)心理健康教育專職教師招聘備考題庫附答案詳解
- 2025年龍虎山景區(qū)公開招聘金牌導(dǎo)游員備考題庫及一套答案詳解
- 2025年武漢音樂學(xué)院鋼琴系非事業(yè)編人員招聘備考題庫及參考答案詳解
- 2025年漣源市市直醫(yī)療衛(wèi)生機(jī)構(gòu)公開招聘專業(yè)技術(shù)人員69人備考題庫及完整答案詳解1套
- 2025年沈陽大學(xué)和沈陽開放大學(xué)面向社會公開招聘急需緊缺事業(yè)單位工作人員21人備考題庫及答案詳解1套
- 汽車電子工程師崗位面試問題及答案
- 工程竣工移交單(移交甲方、物業(yè))
- 服裝生產(chǎn)車間流水線流程
- 錢乙完整版本
- 常見的胃腸道疾病預(yù)防
- 2024-2025學(xué)年江蘇省徐州市高一上學(xué)期期末抽測數(shù)學(xué)試題(解析版)
- 新解讀《DL-T 5891-2024電氣裝置安裝工程 電纜線路施工及驗(yàn)收規(guī)范》新解讀
- 生產(chǎn)部裝配管理制度
- DB31/T 1205-2020醫(yī)務(wù)社會工作基本服務(wù)規(guī)范
- 酒店供貨框架協(xié)議書
- 紡織品的物理化學(xué)性質(zhì)試題及答案
評論
0/150
提交評論