




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
畢業(yè)論文(設(shè)計)題目基于Android通訊錄管理系統(tǒng)設(shè)計與實現(xiàn)學(xué)生姓名學(xué)號學(xué)院 專業(yè) 指導(dǎo)教師聯(lián)系QQ1912881988本人嚴(yán)重聲明:持以“求實、創(chuàng)新”的科學(xué)精神從事研究工作。本文是我個人在導(dǎo)師指導(dǎo)下進(jìn)行的研究工作和取得的研究成果。本文除引文外,所有實驗、數(shù)據(jù)和有關(guān)材料均是真實的。本文除引文和致謝內(nèi)容外,沒有抄襲其他人或其他機構(gòu)發(fā)表或撰寫過的研究成果。作者簽名:__________日期:__________目錄TOC\o"1-3"\h\u1緒論 緒論1.1手機通訊錄管理系統(tǒng)的開發(fā)背景當(dāng)代社會,隨著移動通信的不斷發(fā)展,第三代,第四代,甚至第五代移動通信技術(shù)得到快速發(fā)展,移動終端也隨之得到的越來越快速的普及。現(xiàn)階段。IOS和Android移動操作系統(tǒng)幾乎完全壟斷了移動終端的操作系統(tǒng)的市場份額。同時,因為Android天然開放的特性,其幾乎占據(jù)了全球超過六成的移動市場份額。Android作為一款迅猛發(fā)展的移動操作系統(tǒng),其包含操作系統(tǒng),中間件和一整套相應(yīng)的應(yīng)用。Android基于Java語言進(jìn)行開發(fā),其運行在Dalvik虛擬機上。同時,由于Dalvik虛擬機的不斷優(yōu)化,Java程序的運行效率得到了極大程度的提高。Android系統(tǒng)的底層技術(shù)基于Linux開發(fā)而來,并且為了使Android得到更加高效的運行效率,Google對Linux底層進(jìn)行了深度的優(yōu)化。同時,Android對操作系統(tǒng)的調(diào)度,內(nèi)存管理,進(jìn)程管理機制都提供了優(yōu)秀的解決方案。Android是一款的開放的移動操作系統(tǒng)。任何廠家和個人都能得到Android系統(tǒng)的源代碼,并且可以按照自己的意愿進(jìn)行修改。這帶來了用戶可定制化體驗的極大提升。同時,Android對瀏覽器,圖形圖像系統(tǒng),多媒體等都有著極大的兼容性。電信運營商也可以設(shè)計出符合自身電信網(wǎng)絡(luò)特點的Android終端產(chǎn)品。這些特性,又進(jìn)一步的提高了安卓產(chǎn)品的市場占有率。1.2手機通訊錄管理系統(tǒng)的研究目的和意義隨著科技的發(fā)展,手機等移動終端的普及速度不斷加快,同時,隨著手機的功能的不斷發(fā)展,手機已經(jīng)不是簡單的一款移動設(shè)備,其更多的成為了人與互聯(lián)網(wǎng)進(jìn)行聯(lián)系的載體。為了滿足人們對于手機的不斷提高的要求,手機上的軟件也開始變得越來越功能強大。同時,由于Alphabet的不斷制定的規(guī)范,Android的軟件生態(tài)也變得越來越豐富。作為手機上一款必不可少的軟件,手機通訊錄正變得越來越重要,用戶幾乎離不開它,并且,根據(jù)調(diào)查顯示,用戶幾乎每天都會與手機通訊錄打交道。根據(jù)最新的一項調(diào)查顯示,平均每個用戶每天使用通訊錄的次數(shù)達(dá)到了七八次,隨著時代的不斷發(fā)展,手機通訊錄由最開始的打電話,發(fā)短信的功能,開始不斷衍生出越來越豐富的其余功能。現(xiàn)在,手機通訊錄已經(jīng)不僅僅簡單的是一個軟件,其已經(jīng)發(fā)展為集合了個人多重信息的一個功能載體,并不斷朝著個人名片的方向不斷發(fā)展。正是由于手機通訊錄不斷增強的個性化功能,其也受到了了越來越多的人的喜愛。1.3系統(tǒng)主要實現(xiàn)內(nèi)容及實現(xiàn)方式1.3.1系統(tǒng)主要實現(xiàn)功能通過學(xué)習(xí)Android和Java開發(fā),在熟悉安卓開發(fā)流程的基礎(chǔ)上,設(shè)計出一款符合要求的手機通訊錄軟件。這款手機通訊錄實現(xiàn)目的功能有:1、用戶友好的界面,實現(xiàn)手機通訊錄的基本功能,如增加,刪除,查找,修改聯(lián)系人。2、實現(xiàn)用戶對短信息的相關(guān)操作。3、為滿足越來越多的對安全性的需求,設(shè)計了相應(yīng)的通訊錄備份模塊。1.3.2Android系統(tǒng)的開發(fā)平臺Android系統(tǒng)基于Java語言開發(fā)而來。Java比較理想的編程語言是Eclipse,因此,本通訊錄管理系統(tǒng)的開發(fā)基于Eclipse平臺。Eclipse平臺是一個完整的Java開發(fā)環(huán)境,同時,程序員可在通過安裝相關(guān)的AndroidSDK集成在Eclipse平臺中,實現(xiàn)用Eclipse開發(fā)安卓程序。本通訊錄系統(tǒng)即是基于Eclipse開發(fā)平臺編寫完成而成的。1.4系統(tǒng)開發(fā)所需的技術(shù)支持1.4.1Java開發(fā)語言Java是SUN公司開發(fā)的全新軟件開發(fā)語言。Java編程方式繼承了很多C++的精髓,是一種徹底的完全的面向?qū)ο蟮木幊陶Z言。Java在繼承C++優(yōu)秀的編程特性的時候,舍棄了很多C++中比較復(fù)雜的操作。例如,在C++中,指針作為一個極其重要的操作,幾乎被廣泛使用,但是在Java中,Java完全摒棄了指針操作。Java增加了內(nèi)存回收的機制,因此程序員在進(jìn)行編程時,就不需要考慮代碼的回收問題,而只需要專注于實現(xiàn)功能本身。因為Java的這些特性,Java在全世界范圍內(nèi)受到了越來越廣泛的使用。Java的特點:平臺無關(guān)性Java的平臺無關(guān)性指的是Java的運行與平臺本身的選擇無關(guān),也即,Java的平臺無關(guān)性。正是基于Java的優(yōu)秀的平臺無關(guān)性,全世界的Java代碼可以實現(xiàn)代碼共享。Java的數(shù)據(jù)類型與機器無關(guān)。為了解決Java與二進(jìn)制文件中編譯的問題,Sun公司開發(fā)出虛擬機技術(shù),Java語言開發(fā)了功能強大的虛擬機技術(shù),虛擬機技術(shù)是一種介于硬件和操作系統(tǒng)間的解釋機制,Java的平臺無關(guān)性重要的就是基于虛擬機技術(shù)[1]。安全性Java的編程思想借鑒了C++的編程思想精髓,同時對C++編程語言中一些復(fù)雜的操作,如指針操作等,Java進(jìn)行了舍棄,避免了由于此操作不當(dāng)引起的程序嚴(yán)重問題。在Java程序運行時,內(nèi)存的使用分配由系統(tǒng)自動完成,程序員由此避免了在使用指針時可能遭遇到的各種問題。同時,由于不使用指針,Java程序具有更好的安全性[1]。面向?qū)ο驤ava的一個重要的特點就是完全面向?qū)ο螅渲饕憩F(xiàn)為面向?qū)ο蟮娜齻€基本特征,繼承,封裝和多臺。在Java程序中,類是最小的單位,多個類構(gòu)成了完整的Java程序。Java完全支持使用對象,類,繼承,封裝等來進(jìn)行程序設(shè)計。實際上,這些特性是所有面向?qū)ο缶幊陶Z言的共同特點。在面向?qū)ο缶幊痰倪^程中,程序員可以從客觀世界中存在的事物出發(fā),構(gòu)建軟件體系[1]。分布式TCP/IP中文即網(wǎng)絡(luò)通訊協(xié)議,由基于網(wǎng)絡(luò)層的IP協(xié)議和基于傳輸層的TCP協(xié)議組成。TCP/IP協(xié)議是一種可靠的協(xié)議,利用這層協(xié)議,可以確保消息的發(fā)送的安全性。在消息傳遞過程中,每發(fā)送一個消息,會返回一個響應(yīng)消息,發(fā)送方收到這個響應(yīng)消息后,確定接收方已經(jīng)成功接收到消息,才繼續(xù)發(fā)送下一個消息。若接收方消息接收失敗的話,發(fā)送方會啟動錯誤糾正機制。通過TCP/IP協(xié)議,可以確保數(shù)據(jù)傳輸?shù)陌踩訹2]。健壯性Java是一種優(yōu)秀的跨平臺編程語言,具有一次編譯,隨處運行的特點。Java程序在windows下編譯完成后,可以在其余平臺無縫運營。同時在Java編程的過程,Java提供了諸如類型檢查,內(nèi)存監(jiān)控來檢測編程中可能存在的錯誤。Java程序員不需要考慮內(nèi)存回收的問題,一切由Java得內(nèi)存管理機制自動完成,大大簡化了Java程序的編程。由此,Java程序的生命周期由于這些具有積極意義的方式的引用而得到了極大的延長。Java通過一整套的檢測機制,大大增強了Java程序的健壯性[2]。解釋型C和C++語言是一種接近底層的編程語言,需要根據(jù)特定的編譯器進(jìn)行編譯,甚至需要根據(jù)GPU的特性進(jìn)行編譯,需要程序員具有良好的編程水平。在Java程序中,Java編譯器先將其編譯為字節(jié)碼,也就是class文件,然后將字節(jié)碼交由Java虛擬機運行,所以,很多情況下,Java被人稱為一種半編譯,半編譯的語言[2]。動態(tài)Java的組成部分是類,Java類分為兩類,一類是由程序員自己編寫實現(xiàn)的,另一種則是由Java類庫直接導(dǎo)入的。在程序加載時,動態(tài)加載類庫,由此使得Java可以在分部環(huán)境中實現(xiàn)動態(tài)的維護(hù)程序以及分類[2]。1.4.2Android簡介Android是現(xiàn)在最流行的移動設(shè)備操作系統(tǒng),由Google公司推向市場。現(xiàn)金,基于Android的移動設(shè)備的市場份額,占據(jù)了全世界七成以上的份額,可以說,沒有安卓的世界,是無法想象的。谷歌公司對安卓的市場推廣也是不遺余力,組建了開放手機聯(lián)盟(OHA),同時,谷歌公司也提供了一系列有利于安卓開發(fā)的措施,發(fā)布了AndroidStudio平臺,同時制定了一整套完整的安卓開發(fā)規(guī)范。據(jù)統(tǒng)計,現(xiàn)階段,全世界搭載安卓平臺的設(shè)備已經(jīng)達(dá)到了驚人的15億太,并且這個數(shù)據(jù)還在不斷增長[3]。2手機通訊錄管理系統(tǒng)分析2.1技術(shù)可行性分析Android是一種基于Linux底層開放式移動操作系統(tǒng),由谷歌公司在2005年收購獲得,為推廣安卓操作系統(tǒng),谷歌公司聯(lián)合電信運行商,手機終端廠商,芯片廠商,組成了開放手機聯(lián)盟,其中,谷歌公司處于主導(dǎo)地位。聯(lián)盟內(nèi)的成員可以免費獲得安卓的源代碼,并且根據(jù)自己的需要進(jìn)行修改,滿足個性化的需求。同時,安卓的開發(fā)語言是Java,全世界內(nèi)存在數(shù)量巨大的Java開發(fā)人員。谷歌為了提高安卓的活躍度,提供了完整的安卓開發(fā)文檔,程序員只要遵循谷歌的官方文檔可以很方便快捷的開發(fā)出自己的安卓應(yīng)用[3]。為了方便程序員進(jìn)行軟件開發(fā),在Eclipse集成開發(fā)環(huán)境中,谷歌提供了Android開發(fā)必備的相關(guān)插件,同時,谷歌還開發(fā)發(fā)布了專業(yè)的安卓編程平臺,AndroidStudio,但是目前還不是非常普及。由此,程序員只需要利用集成安卓開發(fā)套件的Eclipse,即能進(jìn)行Android開發(fā)。本軟件的開發(fā)就是采用的Eclipse平臺進(jìn)行開發(fā)[3]。2.2經(jīng)濟(jì)可行性分析由于互聯(lián)網(wǎng)的免費性,本軟件的開發(fā)資料可以通過互聯(lián)網(wǎng)免費獲得。為了解用戶的基本的軟件需求,可以通過發(fā)放問卷調(diào)查的形式進(jìn)行需求分析。軟件開發(fā)完成后的測試工作可以通過一臺安卓設(shè)備或者Eclipse開發(fā)環(huán)境中的安卓虛擬機完成。因此,該畢業(yè)設(shè)計的開發(fā)經(jīng)濟(jì)需求低廉,具有充分的經(jīng)濟(jì)可行性[3]。2.3需求可行性Android現(xiàn)在在全世界移動設(shè)備的市場份額處于壟斷地位,同時,手機通訊錄作為最基礎(chǔ),也是最必不可少的軟件,起品質(zhì)對用戶體驗存在至關(guān)重要的作用[3]。3系統(tǒng)概要設(shè)計3.1總體功能設(shè)計本安卓手機通訊錄基于用戶普遍的需求開發(fā)而來,實現(xiàn)用戶對手機內(nèi)聯(lián)系人管理的最基本的需求。其基本功能包括手機聯(lián)系人的增加,手機聯(lián)系人的修改,刪除,手機聯(lián)系人的查早=找。同時,為了滿足用戶恭喜那個花的需求,實現(xiàn)了書記來新人頭像的更換,備份功能。同時,一款優(yōu)秀的手機通訊錄軟件還應(yīng)該具有短信的功能,本手機通訊錄實現(xiàn)了該功能。同時,為了使數(shù)據(jù)安全得到保證,該手機通訊錄還實現(xiàn)了數(shù)據(jù)的備份功能。手機通訊錄的功能結(jié)構(gòu)圖如圖3-1所示。圖3-1功能結(jié)構(gòu)圖3.2系統(tǒng)流程設(shè)計3.2.1業(yè)務(wù)流程圖當(dāng)用戶在安卓手機上安卓了本手機通訊錄軟件后,軟件會讀取手機中原本存在的聯(lián)系人,然后按照漢語拼音的首字母順序顯示。軟件底欄包括四個選項,分別是撥號,聯(lián)系人,信息,個人中心。點擊撥號后,可以實現(xiàn)輸入號碼后呼出的功能,同時,撥號界面記錄了你最近的聯(lián)系消息人。聯(lián)系人界面的功能是顯示全部所有的聯(lián)系人的詳細(xì)信息,聯(lián)系人的頭像被點擊后,可以實現(xiàn)撥打電話,發(fā)送發(fā)短信,以及其余的相關(guān)的和對聯(lián)系人進(jìn)行的相關(guān)操作。信息界面顯示手機內(nèi)存在的短消息記錄。在現(xiàn)代社會,信息安全變得越來越重要,為了實現(xiàn)對信息的保護(hù),本手機通訊錄軟件,實現(xiàn)了對信息的備份功能,若用戶不小心刪除某個信息后,可以很方便的實現(xiàn)一鍵恢復(fù)功能。其中,手機通訊錄業(yè)務(wù)流程圖如圖3-2。圖3-2手機通訊錄業(yè)務(wù)流程圖3.3系統(tǒng)數(shù)據(jù)庫簡介與設(shè)計3.3.1SQLite數(shù)據(jù)庫簡介SQLite是符合ACID規(guī)范的一種輕型數(shù)據(jù)庫系統(tǒng),它包含在一個相對小的C庫當(dāng)中。SQLite數(shù)據(jù)庫就是為移動便攜式設(shè)備而生,并且隨著移動設(shè)備的爆發(fā)式增長,SQLite數(shù)據(jù)庫也得到了非常快速的普及和發(fā)展。輕量化是SQLite數(shù)據(jù)庫的一大特點,一般情況下,SQLite數(shù)據(jù)庫只要幾百K的內(nèi)存占用,就可以實現(xiàn)系統(tǒng)數(shù)據(jù)的功能。現(xiàn)階段,主流的操作都可以實現(xiàn)對SQLite數(shù)據(jù)庫的完美支持,同時能夠跟很多程序語言相結(jié)合,比如C#、PHP、Java等。另外,相比其余的數(shù)據(jù)庫系統(tǒng),如Mysql,SQLite等,由于SQLite的輕量化特性,對內(nèi)存資源占用里比較低,所以SQLite數(shù)據(jù)庫相比較其余數(shù)據(jù)庫能夠提供更快的運行速度[4]。本手機通訊錄管理軟件就是基于Eclipse平臺用Java語言進(jìn)行開發(fā)的。同時,由于SQLite數(shù)據(jù)庫是非可視化操作,所以,軟件中對數(shù)據(jù)庫的操作完全是通過執(zhí)行Java代碼實現(xiàn)的,在這個過程中沒有使用其余的輔助工具。3.3.2系統(tǒng)數(shù)據(jù)庫設(shè)計為了設(shè)計出符合用戶使用的通訊錄系統(tǒng),本系統(tǒng)需要設(shè)計出相關(guān)且合適的數(shù)據(jù)庫表。本系統(tǒng)包含的數(shù)據(jù)表包括聯(lián)系人表tbl_contact,電子郵件表tbl_email,組類別表tbl_group,圖片表tbl_im,電話表tbl_tel,短信表以及tb_msg等。其中,聯(lián)系人表中所包含的屬性有ID,NAME,NAMEPINYIN,NICKNAME,ADDRESS,COMPANY,BIRTHDAY,NOTE,IMAGE,GROUPID.聯(lián)系人表tbl_contact結(jié)構(gòu)如表3-3所示。表3-3tbl_contact表屬性數(shù)據(jù)類型說明IDInteger自動增加的主鍵NAMEString[]聯(lián)系人姓名NAMEPINYINString[]聯(lián)系人姓名拼音NICKNAMEString[]聯(lián)系人昵稱ADDRESSString[]聯(lián)系人地址COMPANYString[]聯(lián)系人公司BIRTHDAYString[]聯(lián)系人生日NOTEString[]備注IMAGEInteger圖片標(biāo)號GROUPIDInteger組號電子郵件表tbl_email結(jié)構(gòu)如圖3-4所示表3-4tbl_email表屬性數(shù)據(jù)類型說明EMAILIDInteger自動增加的主鍵IDInteger電子郵件標(biāo)識EMAILNAMEString[]電子郵件名EMAILACCOUNTString[]電子郵件賬戶其余表結(jié)構(gòu)類似于表3-3,表3-4,在此不一一舉例。4系統(tǒng)詳細(xì)設(shè)計4.1聯(lián)系人模塊4.1.1聯(lián)系人操作模塊當(dāng)安裝本手機通訊錄后,系統(tǒng)默認(rèn)的界面是聯(lián)系人顯示界面。在這個界面中,ListView控件是核心控件,其能將手機中原本已經(jīng)存在的手機聯(lián)系人的信息顯示出來,并且按照漢語拼音首字母的順序顯示出來,若手機中還沒有存儲聯(lián)系人,就顯示空,否則將聯(lián)系人信息和頭像顯示在ListView的adapter容器中。列表的每一行,依次顯示聯(lián)系人的頭像,聯(lián)系人姓名和聯(lián)系人聯(lián)系方式。其中,聯(lián)系人的顯示順序是按照漢語拼音的順序進(jìn)行排序顯示的。單擊聯(lián)系人頭像,可以進(jìn)入編輯聯(lián)系人信息界面。當(dāng)用戶長時間按住聯(lián)系人手機號碼時可以選擇對聯(lián)系人進(jìn)行增刪改查的操作。撥打電話,發(fā)送短信的快捷方式,也可以通過單擊聯(lián)系人頭像進(jìn)行快速操作,提高了用戶的操作的便捷性。聯(lián)系人瀏覽界面如圖4-1所示:圖4-1聯(lián)系人瀏覽界面用戶在此界面進(jìn)行進(jìn)行單擊時,會進(jìn)入到聯(lián)系人詳細(xì)信息編輯狀態(tài),可以對聯(lián)系人的各項信息進(jìn)行編輯,增加或者刪除。如圖4-2和4-3所示圖4-2聯(lián)系人編輯圖4-3聯(lián)系人編輯在此界面下,當(dāng)用戶長時間觸摸聯(lián)系人某個人聯(lián)系方式的某一項時,系統(tǒng)會彈出菜單選項。在菜單中,包括增加聯(lián)系人,刪除聯(lián)系人,修改聯(lián)系人的三個選項。當(dāng)用戶選擇刪除聯(lián)系人時,為了防止用戶的誤操作,系統(tǒng)設(shè)置了對用戶刪除的確認(rèn)選項只有當(dāng)用戶選擇確認(rèn)刪除后,系統(tǒng)才會將聯(lián)系人的信息徹底刪除,否則不會。當(dāng)用戶選擇修改聯(lián)系人時,會顯示修改聯(lián)系人的相關(guān)信息,新增一個聯(lián)系人同理。如圖4-4所示。圖4-4聯(lián)系人操作現(xiàn)代社會,隨著時代觀念的不斷發(fā)展,人們對個性化的要求越來越強烈。為了體現(xiàn)本安卓手機通訊錄管理軟件的的一些特色功能,本手機通訊錄軟件開發(fā)了一些特色的功能。對聯(lián)系人的頭像顯示來說,為了實現(xiàn)差異化,可以通過更改點擊頭像圖片區(qū)域?qū)崿F(xiàn)聯(lián)系人頭像設(shè)置的個性化功能。設(shè)置聯(lián)系人頭像本軟件提供了三種方式,分別為通過拍攝一張照片設(shè)置為用戶的頭像。第二種方式是,在代碼中預(yù)置了一些系統(tǒng)圖片,當(dāng)用戶選擇從系統(tǒng)圖片中設(shè)置用戶頭像時,系統(tǒng)會顯示出系統(tǒng)中的圖片供用戶選擇。第三種方式就是用戶可以選擇手機文件中的圖片進(jìn)行設(shè)置。其中,當(dāng)用戶選擇通過拍照時,手機通訊錄管理軟件會像系統(tǒng)申請拍照的權(quán)限,若手機通訊錄申請到這個權(quán)限后,其會啟動相機,進(jìn)行拍照。這三種設(shè)置聯(lián)系人頭像的方式,使得手機通信錄管理軟件不是那么單調(diào),提高了用戶的使用積極性,同時,也使得軟件的可玩性得到了一定程度的提高。圖4-5圖像選擇4.1.2聯(lián)系人查找模塊對聯(lián)系人進(jìn)行查找是手機通訊錄管理軟件的一大重要功能,其可以使得用戶快速的查找到符合要求的聯(lián)系人。在模塊中,使用SQL語句的模糊查詢,可以查找符合要求的聯(lián)系人,只需要在搜索框內(nèi)輸入所需要查找聯(lián)系人的漢語音首字母,即可以查找到相關(guān)所有聯(lián)系人呢。聯(lián)系人的相關(guān)信息將在ListView控件中顯示出來。如圖4-6所示圖4-6聯(lián)系人查找4.2信息模塊4.2.1信息顯示模塊當(dāng)用戶想要獲取到手機內(nèi)存在的聯(lián)系人信息時,可以通過點擊主菜單欄的信息按鈕,實現(xiàn)用戶短信息的呈現(xiàn)。該界面的核心控件是ListView控件。在該界面下,手機數(shù)據(jù)庫中的短信息內(nèi)容,將會再次界面進(jìn)行顯示,若數(shù)據(jù)庫中短信息內(nèi)容是空,則顯示的為空。每條短信息會提供一個信息預(yù)覽,并顯示聯(lián)系人的頭像和聯(lián)系號碼。其中。短信息的排序是按照時間排序,越新的信息,其顯示的位置會越靠前。如圖4-7所示圖4-7短信息顯示4.2.2信息編輯模塊在短信息顯示界面,如果進(jìn)行長時間點擊,會彈出相關(guān)選項界面。可以選擇對這個聯(lián)系人進(jìn)行撥打電話或者刪除其短信息內(nèi)容,當(dāng)用戶點擊撥打電話時,手機通訊錄會調(diào)用系統(tǒng)服務(wù),進(jìn)行撥打電話。若用戶選擇刪除選項,則軟件會刪除相關(guān)聯(lián)系人的短信息內(nèi)容。如圖4-8所示。圖4-8短信息操作在短信息顯示界面,點擊短信息聯(lián)系人頭像時,若此號碼已經(jīng)存在于聯(lián)系人列表中,會彈出打電話,發(fā)送短信息給此聯(lián)系人,發(fā)送郵件給此聯(lián)系人或者對聯(lián)系人信息進(jìn)行編輯如圖4-9所示。圖4-9短信息操作當(dāng)短信息中顯示的聯(lián)系人的號碼不在數(shù)據(jù)不在數(shù)據(jù)庫中時,用戶可以通過點擊短信息界面顯示的頭像選擇添加聯(lián)系人,用戶可以選擇確認(rèn)或者取消。若用戶選擇確認(rèn)按鈕,系統(tǒng)會進(jìn)入聯(lián)系人編輯界面,用戶可以編輯聯(lián)系人信息并存入數(shù)據(jù)庫。如圖4-10所示。圖4-10聯(lián)系人添加圖在短信息顯示界面,點擊右上角的ImageButton,系統(tǒng)會進(jìn)入新建信息界面。此界面的核心控件是GridView,系統(tǒng)會讀取數(shù)據(jù)庫中的聯(lián)系人姓名填充到此控件中,其中排序方式是按照行列形式呈現(xiàn)。用戶可以通過點擊所需發(fā)送短信息的一個或者多個聯(lián)系人將他們填充到TextView控件中。用戶在短信息編輯的TextView空間中編輯好信息后,可以發(fā)送信息給一個聯(lián)系人或者同時發(fā)送信息給幾個人。如圖4-11所示。圖4-11短信息發(fā)送當(dāng)短信息發(fā)送完成后,通過在系統(tǒng)代碼中添加添加標(biāo)記來區(qū)分本條短信息是否已經(jīng)被閱讀過。其中read為1時表示該信息已經(jīng)被閱讀過,若read=0,則說明此短信息未被閱讀。同時,考慮到用戶的使用方便性,在短信息顯示內(nèi)容界面內(nèi),設(shè)置了撥號的ImageButton,通過此圖標(biāo),當(dāng)用戶需要直接聯(lián)系短信息來聯(lián)系人時,用戶可以直接進(jìn)行點擊此ImageButton,然后調(diào)用系統(tǒng)自帶的撥號服務(wù)直接呼叫聯(lián)系人,從而極大的方便了用戶的使用。4.3個人中心模塊隨著社會和科技的不斷發(fā)展,個人信息的安全和保護(hù)也越來越受到人們的重視,用戶已經(jīng)不僅僅滿足于一款普通的手機通訊錄軟件。一款好的手機通訊錄軟件,除了滿足用戶對于打電話或者發(fā)送短信的基本必備功能外,安全性也是一個很重要的方面。為了滿足用戶的要求,本手機通訊錄管理軟件實現(xiàn)了一個個人中心的功能。通過這個功能,用戶可以實現(xiàn)聯(lián)系人,短信息的一鍵備份和恢復(fù)功能。安裝本手機通訊錄管理軟件后,本軟件提供了兩種導(dǎo)入手機中已經(jīng)存在的手機聯(lián)系人的方式,分別是從SIM卡導(dǎo)入和通過系統(tǒng)聯(lián)系人導(dǎo)入,免去了用戶從手機一個一個錄入聯(lián)系人的不便。個人中心模塊如圖4-12所示:圖4-12個人中心該界面的核心空間是GridView控件,在此空間中,通過適配器adapter將所需顯示的圖片和文字信息填充到GridView。其中主要功能有聯(lián)系人的備份和恢復(fù),短信息的備份和恢復(fù),以及從SIM卡導(dǎo)入聯(lián)系人和系統(tǒng)聯(lián)系人導(dǎo)入。為了提高用戶的使用體驗,防止用戶因為某些原因誤刪除聯(lián)系人而不可恢復(fù)的情況,本手機通訊錄管理軟件設(shè)計了聯(lián)系人的備份和恢復(fù)模塊,從而保護(hù)用戶的相關(guān)數(shù)據(jù)內(nèi)容,以及確保用戶手機聯(lián)系人的可恢復(fù)性。當(dāng)用戶點擊聯(lián)系人備份時,本手機通訊錄軟件可以實現(xiàn)聯(lián)系人的相關(guān)數(shù)據(jù)內(nèi)容備份到本地。當(dāng)用戶因為不小心而刪除聯(lián)系人時,可以通過聯(lián)系人恢復(fù)菜單恢復(fù)聯(lián)系人信息,保證了用戶使用的安全性。在信息備份模塊中,本手機通訊錄軟件會讀取數(shù)據(jù)庫中的所有短信息內(nèi)容,并將短信息內(nèi)容備份到手機本地,當(dāng)用戶因為不小心而刪除某個聯(lián)系人的短信息時,則可以在已經(jīng)備份聯(lián)系人短信息的前提下,通過信息恢復(fù)模塊,可以實現(xiàn)短信息的恢復(fù)操作,從而進(jìn)一步保證了用戶的數(shù)據(jù)安全,提升了用戶的使用體驗。當(dāng)用戶安裝本手機通訊錄管理軟件后,在個人中心模塊內(nèi),本軟件設(shè)置了導(dǎo)入SIM卡聯(lián)系人選項以及導(dǎo)入系統(tǒng)聯(lián)系人模塊,通過這兩個模塊,可以自動讀取到手機中原本存在的聯(lián)系人,避免了用戶手動一個一個輸入系統(tǒng)已經(jīng)存在聯(lián)系人的不便,方便了用戶的使用。5系統(tǒng)測試與調(diào)試5.1測試的概念廣義上講,測試是在軟件生存周期內(nèi)對軟件進(jìn)行的相關(guān)檢查,評審和確認(rèn)活動。如:設(shè)計評審、系統(tǒng)測試。狹義上講,測試是對軟件的產(chǎn)品品質(zhì)進(jìn)行檢測和評價,并且通過測試,發(fā)現(xiàn)軟件產(chǎn)品中可能存在的問題。它能在檢測軟件中可能存在的各種問題時,同時可以給予軟件維護(hù)人員必要的反饋。5.2測試的目的在軟件程序的正式發(fā)布運行前,為了確保軟件程序的正確性,穩(wěn)定性以及可靠性,必須要進(jìn)行軟件測試。具體來說,軟件程序的測試,就是在軟件程序正式發(fā)布運行前,對軟件程序的需求分析,開發(fā)文檔,軟件代碼的復(fù)查。通過軟件程序的測試,以期可以發(fā)現(xiàn)軟件程序中可能存在的相關(guān)的問題,并且交由程序開發(fā)人員進(jìn)行進(jìn)一步的修改[5]。測試的目的就是在軟件正式投入生產(chǎn)性運行之前,盡可能發(fā)現(xiàn)軟件中存在的錯誤以及不穩(wěn)定的地方。軟件開發(fā)過程中可能存在錯誤,這在現(xiàn)如今的軟件開發(fā)過程中幾乎是不可避免的。只有通過軟件的測試,編程人員才可能在編程的每個階段發(fā)現(xiàn)軟件的可能存在的錯誤,并且使相關(guān)的維護(hù)人員對軟件的錯誤進(jìn)行相關(guān)的修改和反饋[5]。5.3測試的原則在測試中,我們應(yīng)遵循Good-enough原則。Goood-enough原則是一種衡量投入/產(chǎn)出比的原則:過分的測試一方面可以達(dá)到測試強度需求,從而使測試結(jié)果更加可靠,發(fā)現(xiàn)軟件開發(fā)過程中的錯誤,使編程人員可以修改錯誤,但是從另外一個角度來講,過分的測試又是一種浪費,它消耗了太多的資源,有時得不償失。不充分的測試節(jié)省了系統(tǒng)資源,但是由于測試的不充分可能會使測試結(jié)果不可靠。但是在實際測試過程中,大部分時候,我們很難對過分的測試或者不充分的測試實現(xiàn)百分之一百正確的鑒定。目前普遍采用的方法是,制定一個測試結(jié)果的最低目標(biāo)要求,并且具體問題具體分析[5]。5.4程序測試在程序的開發(fā)過程中,開發(fā)人員難免會遇到各種各樣的困難或者由于開發(fā)過程的不規(guī)范而造成軟件的各種問題與錯誤,如程序語法的錯誤,程序設(shè)計的錯誤等等。軟件程序的開發(fā)是一個系統(tǒng)性的工程。在軟件程序的開發(fā)過程在,每開發(fā)完一個功能模塊,都應(yīng)該及時進(jìn)行程序的測試,以發(fā)現(xiàn)和解決開發(fā)過程中出現(xiàn)的各種問題。開發(fā)完一個功能,需要及時測試,待測試完成后,方才可以進(jìn)行下一個階段的開發(fā)[6]。5.5測試的主要內(nèi)容測試的主要內(nèi)容包括,代碼審查、單元測試、集成測試、確認(rèn)測試以及系統(tǒng)測試。一般情況下,在編碼工作完成以后,且完成編碼的審查工作后,即可以進(jìn)行相關(guān)的單元測試
。測試用例的設(shè)計應(yīng)與復(fù)審工作相結(jié)合,根據(jù)設(shè)計信息需要選取適當(dāng)測試數(shù)據(jù),通過合適的測試用例的設(shè)計,在測試過程中,會發(fā)現(xiàn)更多軟件程序設(shè)計中可能存在的各種問題。
一般情況下測試活動大致分成一下四個部分:單元測試,集成測試,系統(tǒng)測試,驗收測試[7]。1.單元測試單元測試是代碼一級的測試,主要由相關(guān)開發(fā)人員進(jìn)行。單元測試是對軟件模塊進(jìn)行測試。單元測試以詳細(xì)設(shè)計描述為依據(jù)。在單元測試中,應(yīng)對軟件程序中所有重要的模塊進(jìn)行測試,以便發(fā)現(xiàn)模塊內(nèi)部可能存在的各種錯誤。單元測試中各個模塊多并行進(jìn)行百合測試[7]。集成測試對軟件程序中各個模塊間的組合進(jìn)行測試即為集成測試,集成測試?yán)硐氲哪繕?biāo)是將程序軟件的所有模塊進(jìn)行組合成功,使程序各個模塊之間不存在模塊匹配的問題[8]。系統(tǒng)測試
系統(tǒng)測試是由若干個無關(guān)不同的測試組成的,經(jīng)過系統(tǒng)測試后,軟件系統(tǒng)應(yīng)該實現(xiàn)充分運行的目的,并且驗證系統(tǒng)的各個模塊間能否實現(xiàn)正確的工作。另外,系統(tǒng)測試應(yīng)測試軟件是否已經(jīng)達(dá)到設(shè)計要求[8]。4驗收測試由專業(yè)人員進(jìn)行測試,以驗收程序軟件是否達(dá)到了預(yù)定的要求[8]。5.6測試用例系統(tǒng)測試就是利用測試工具依據(jù)標(biāo)準(zhǔn)測試方案和流程對產(chǎn)品性能和功能進(jìn)行測試,根據(jù)需要編寫不同的測試工具,設(shè)計和維護(hù)測試系統(tǒng),并根據(jù)測試的結(jié)果,維護(hù)人員可以對此過程中發(fā)現(xiàn)的問題進(jìn)行相關(guān)的改進(jìn)。根據(jù)功能和性能測試需求制定以下測試用例,測試用例表如表5-1所示表5-1測試用例測試用例測試概述測試步驟預(yù)期結(jié)果實際結(jié)果添加聯(lián)系人測試用戶能否將新聯(lián)系人存入SQLite數(shù)據(jù)庫內(nèi)點擊系統(tǒng)功能鍵添加聯(lián)系人正確實現(xiàn)聯(lián)系人添加到SQLite數(shù)據(jù)庫正確實現(xiàn)聯(lián)系人添加到SQLite數(shù)據(jù)庫刪除聯(lián)系人測試用戶能否將聯(lián)系人從SQLite數(shù)據(jù)庫中進(jìn)行刪除在聯(lián)系人列表界面長按某個聯(lián)系人實現(xiàn)刪除正確將聯(lián)系人從SQLite數(shù)據(jù)庫內(nèi)刪除正確將聯(lián)系人從SQLite數(shù)據(jù)庫內(nèi)刪除編輯聯(lián)系人測試用戶能否對聯(lián)系人的個人信息進(jìn)行編輯在聯(lián)系人個人信息界面進(jìn)行個人聯(lián)系信息的編輯操作能夠編輯聯(lián)系人個人信息,并且能添加到數(shù)據(jù)庫中正確實現(xiàn)編輯聯(lián)系人個人信息,并且能添加到數(shù)據(jù)庫中發(fā)送短信息測試用戶能否利用本軟件正確實現(xiàn)發(fā)送短信息功能在短信息界面進(jìn)行短信息的編輯和發(fā)送能夠正確實現(xiàn)發(fā)送短信息功能正確實現(xiàn)發(fā)送短信息功能刪除短信息測試用戶能否通過本軟件實現(xiàn)短信息的刪除在短信息界面進(jìn)行短信息的刪除能夠正確實現(xiàn)刪除短信息的功能正確實現(xiàn)短信息的刪除功能備份和還原聯(lián)系人測試本軟件能否實現(xiàn)手機聯(lián)系人的備份和恢復(fù)在個人中心模塊內(nèi)進(jìn)行聯(lián)系人的備份和恢復(fù)能夠正確實現(xiàn)聯(lián)系人的備份和恢復(fù)正確實現(xiàn)聯(lián)系人的備份和恢復(fù)備份和恢復(fù)短信息測試本軟件能否實現(xiàn)手機短信息的備份和恢復(fù)在個人中心模塊內(nèi)進(jìn)行短信息的備份和恢復(fù)能夠正確實現(xiàn)短信息的備份和恢復(fù)正確實現(xiàn)短信息的備份和恢復(fù)5.7系統(tǒng)測試結(jié)果5.7.1編輯聯(lián)系人功能測試在聯(lián)系人界面點擊聯(lián)系人進(jìn)入到聯(lián)系人各項信息編輯界面,在此界面下,聯(lián)系人的各項信息可以被進(jìn)行修改。當(dāng)用戶對聯(lián)系人信息修改完成后,點擊屏幕下方的保存按鈕,就觸發(fā)了監(jiān)聽事件,從而軟件對數(shù)據(jù)庫內(nèi)的聯(lián)系人信息進(jìn)行了相應(yīng)的修改后再存入到數(shù)據(jù)庫內(nèi),然后返回到聯(lián)系人顯示界面。在聯(lián)系人詳細(xì)信息顯示界面,可以查看到聯(lián)系人的包括手機號碼,地址,郵件等的詳細(xì)聯(lián)系信息,并且可以進(jìn)行相關(guān)的操作。測試結(jié)果如圖5-2所示圖5-2添加聯(lián)系人其中,用戶可以通過點擊添加更過更多屬性按鈕,來對聯(lián)系人的詳細(xì)聯(lián)系信息進(jìn)行更加進(jìn)一步的編輯。5.7.2查找聯(lián)系人功能查找聯(lián)系人界面如圖5-3所示,在聯(lián)系人顯示列表中,通過在聯(lián)系人搜索框內(nèi)輸入所要查詢的聯(lián)系人姓名的漢語拼音首字母,系統(tǒng)會從數(shù)據(jù)庫中查找到所有符合條件的聯(lián)系人并顯示出來,如果未查找到相關(guān)聯(lián)系人,則無顯示。圖5-3查找聯(lián)系人5.7.3刪除聯(lián)系人測試在聯(lián)系人顯示界面,若長時間點擊聯(lián)系人,手機通訊錄管理系統(tǒng)會彈出對話框,此對話框包括三個選項,分別是刪除聯(lián)系人,編輯聯(lián)系人以及新建聯(lián)系人。當(dāng)用戶選擇刪除聯(lián)系人時,系統(tǒng)會讓用戶進(jìn)行確認(rèn)此操作,只有用戶確認(rèn)后,系統(tǒng)才會從數(shù)據(jù)庫中刪除此聯(lián)系人。如圖5-4所示。圖5-4刪除聯(lián)系人5.7.4短信息發(fā)送測試在短信息顯示界面,我們可以通過編輯按鈕進(jìn)行短信的編輯與發(fā)送。由于模擬器本身的局限性,為了測試短信息模塊的開發(fā)成功與否,該模塊的測試在一臺安卓手機上進(jìn)行了測。經(jīng)過測試,軟件的信息模塊開發(fā)成功。5.7.5短信息刪除測試在短信息顯示界面,當(dāng)用戶長時間點擊某一條短信息時,手機通訊錄管理系統(tǒng)會彈出對話框,供用戶選擇具體操作。用戶可以通過選擇刪除,手機通訊錄管理軟件會從數(shù)據(jù)庫內(nèi),刪除本條信息并且返回短信息顯示界面。如圖5-5所示。圖5-5刪除短信息5.7.6備份功能測試為了保護(hù)用戶數(shù)據(jù)的安全,開發(fā)了個人中心模塊,在個人中心模塊內(nèi),擁有聯(lián)系人備份,聯(lián)系人恢復(fù),短信息備份,短信息恢復(fù),導(dǎo)入聯(lián)系人等模塊。當(dāng)用戶選擇數(shù)據(jù)備份后,手機通訊錄管理軟件會將用戶數(shù)據(jù),進(jìn)行備份到本機。在今后的使用中,如果用戶因為某些誤操作而刪除某些內(nèi)容后,通過聯(lián)系人恢復(fù)和短信息恢復(fù),可以恢復(fù)之前的數(shù)據(jù)。界面如圖5-6所示
圖5-6備份5.8測試總結(jié)經(jīng)過多次對本手機通訊錄管理軟件進(jìn)行的測試后我們發(fā)現(xiàn),本軟件可以正確的實現(xiàn)對聯(lián)系人進(jìn)行的相關(guān)的增刪改查工作。并且系統(tǒng)也正確實現(xiàn)了對短信息的相關(guān)編輯以及刪除操作。本手機通訊錄管理軟件,基本實現(xiàn)了其應(yīng)該具備的相關(guān)功能,并且在運行的過程中,手機通訊錄管理系統(tǒng)運行穩(wěn)定,未出現(xiàn)嚴(yán)重的崩潰狀況,因此,系統(tǒng)運行狀態(tài)基本良好,基本達(dá)到了預(yù)定目標(biāo)。當(dāng)然,在整個軟件的開發(fā)測試過程中,還存在的各種不足,遠(yuǎn)遠(yuǎn)未達(dá)到完美的狀態(tài),在工作構(gòu)思等方面,還存在某些不足。與此同時,該手機通訊錄管理系統(tǒng)還可以進(jìn)一步進(jìn)行擴展以實現(xià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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年常州工程職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測試近5年常考版參考題庫含答案解析
- 2025年山東商務(wù)職業(yè)學(xué)院高職單招高職單招英語2016-2024歷年頻考點試題含答案解析
- icl相關(guān)知識課件
- 2025年寧夏職業(yè)技術(shù)學(xué)院高職單招(數(shù)學(xué))歷年真題考點含答案解析
- 2025年北京市順義區(qū)高三一模數(shù)學(xué)試卷(含答案解析)
- 血友病的護(hù)理
- 腦血栓的診斷
- AFP防治知識培訓(xùn)課件
- 護(hù)理文化與護(hù)士
- 2019交通安全課件
- 消化內(nèi)鏡進(jìn)修總結(jié)匯報
- 山東省臨沂市河?xùn)|區(qū)2023-2024學(xué)年七年級下學(xué)期期中測試歷史試題
- 江蘇省昆山、太倉、常熟、張家港市2023-2024學(xué)年下學(xué)期七年級數(shù)學(xué)期中試題
- 生物地球化學(xué)性疾病試題
- 休閑與旅游農(nóng)業(yè)課件
- 感覺障礙護(hù)理課件
- 體育運動員參賽健康狀況證明模板
- 教師的挑戰(zhàn):寧靜的課堂革命
- 菲亞特博悅說明書
- 空調(diào)維保服務(wù)方案(技術(shù)方案)
- 高空發(fā)光字安裝應(yīng)急預(yù)案
評論
0/150
提交評論