基于android平臺(tái)的手機(jī)相冊(cè)軟件的開發(fā)及實(shí)現(xiàn)_第1頁
基于android平臺(tái)的手機(jī)相冊(cè)軟件的開發(fā)及實(shí)現(xiàn)_第2頁
基于android平臺(tái)的手機(jī)相冊(cè)軟件的開發(fā)及實(shí)現(xiàn)_第3頁
基于android平臺(tái)的手機(jī)相冊(cè)軟件的開發(fā)及實(shí)現(xiàn)_第4頁
基于android平臺(tái)的手機(jī)相冊(cè)軟件的開發(fā)及實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、. - 可修編工業(yè)園區(qū)效勞外包職業(yè)學(xué)院畢業(yè)設(shè)計(jì)論文論文題目:基于android平臺(tái)的手機(jī)相冊(cè)軟件的開發(fā)與實(shí)現(xiàn)屆 別 2016屆系 別網(wǎng)絡(luò)與通信技術(shù)系專業(yè)移動(dòng)通信運(yùn)營(yíng)與效勞班級(jí)通信131姓 名 戚秀學(xué) 號(hào)130121001指導(dǎo)教師 金霞畢業(yè)設(shè)計(jì)論文獨(dú)創(chuàng)性聲明本人聲明,所呈交的畢業(yè)設(shè)計(jì)論文系在指導(dǎo)教師的指導(dǎo)下本人獨(dú)立完成的研究成果。論文中依法引用他人的成果,均已做出明確標(biāo)注或得到許可。論文容未包含法律意義上已屬于他人的任何形式的研究成果,如論文涉及任何知識(shí)產(chǎn)權(quán)糾紛,本人將承當(dāng)一切責(zé)任。 學(xué)生簽名:_日期:_. 目 錄TOC o 1-3 h u HYPERLINK l _Toc9426 第一章 系統(tǒng)

2、論述 PAGEREF _Toc9426 2 HYPERLINK l _Toc23329 1.1課題背景 PAGEREF _Toc23329 2 HYPERLINK l _Toc16883 1.2 Android系統(tǒng)相冊(cè)軟件現(xiàn)狀 PAGEREF _Toc16883 3 HYPERLINK l _Toc22059 1.2.1快圖瀏覽 PAGEREF _Toc22059 3 HYPERLINK l _Toc19881 1.2.2 Gallery 3D PAGEREF _Toc19881 4 HYPERLINK l _Toc24620 第二章 Android開發(fā)平臺(tái) PAGEREF _Toc24620

3、 5 HYPERLINK l _Toc15711 2.1 Android的由來 PAGEREF _Toc15711 5 HYPERLINK l _Toc10370 2.2 Windows系統(tǒng)中Android開發(fā)平臺(tái)在Eclipse上的搭建 PAGEREF _Toc10370 5 HYPERLINK l _Toc23569 2.2.1 Java開發(fā)環(huán)境的建立 PAGEREF _Toc23569 5 HYPERLINK l _Toc10990 2.2.2 Eclipse的安裝 PAGEREF _Toc10990 5 HYPERLINK l _Toc26730 2.2.3 下載Android SDK

4、 PAGEREF _Toc26730 6 HYPERLINK l _Toc15790 2.2.4 在eclipse中安裝ADTAndroid Development Tools PAGEREF _Toc15790 6 HYPERLINK l _Toc12520 2.2.5 新建一個(gè)模擬器 PAGEREF _Toc12520 6 HYPERLINK l _Toc27037 第三章 Android相冊(cè)系統(tǒng)分析 PAGEREF _Toc27037 7 HYPERLINK l _Toc1538 3.1 系統(tǒng)可行性分析 PAGEREF _Toc1538 7 HYPERLINK l _Toc9269 3.

5、2 系統(tǒng)需求分析 PAGEREF _Toc9269 7 HYPERLINK l _Toc23207 3.3 基于Android平臺(tái)手機(jī)相冊(cè)軟件的建立原則 PAGEREF _Toc23207 8 HYPERLINK l _Toc668 第四章 Android相冊(cè)概要設(shè)計(jì) PAGEREF _Toc668 8 HYPERLINK l _Toc28049 4.1 系統(tǒng)設(shè)計(jì)目標(biāo) PAGEREF _Toc28049 8 HYPERLINK l _Toc30246 4.2 系統(tǒng)模塊設(shè)計(jì) PAGEREF _Toc30246 8 HYPERLINK l _Toc27193 4.2.1 系統(tǒng)功能模塊劃分 PAGE

6、REF _Toc27193 8 HYPERLINK l _Toc26106 4.2.2 系統(tǒng)總體構(gòu)造設(shè)計(jì) PAGEREF _Toc26106 9 HYPERLINK l _Toc9847 4.2.3 系統(tǒng)模塊用例分析 PAGEREF _Toc9847 11 HYPERLINK l _Toc22197 第五章 Android相冊(cè)的功能實(shí)現(xiàn) PAGEREF _Toc22197 13 HYPERLINK l _Toc2574 5.1瀏覽照片功能模塊實(shí)現(xiàn) PAGEREF _Toc2574 14 HYPERLINK l _Toc6204 5.2拍攝照片模塊實(shí)現(xiàn) PAGEREF _Toc6204 15 H

7、YPERLINK l _Toc22455 5.3 分享照片到新浪微博模塊實(shí)現(xiàn) PAGEREF _Toc22455 16 HYPERLINK l _Toc29477 5.4 刪除照片模塊實(shí)現(xiàn) PAGEREF _Toc29477 17HYPERLINK l _Toc2923 5.5 照片詳細(xì)信息模塊實(shí)現(xiàn) PAGEREF _Toc2923 18 HYPERLINK l _Toc23132 第六章 系統(tǒng)測(cè)試 PAGEREF _Toc23132 19 HYPERLINK l _Toc24560 6.1 單元測(cè)試 PAGEREF _Toc24560 19 HYPERLINK l _Toc2795 6.2

8、集成測(cè)試 PAGEREF _Toc2795 20 HYPERLINK l _Toc24068 6.3 測(cè)試結(jié)果 PAGEREF _Toc24068 20 HYPERLINK l _Toc4881 致 PAGEREF _Toc4881 21 HYPERLINK l _Toc10640 參考文獻(xiàn) PAGEREF _Toc10640 21基于android平臺(tái)的手機(jī)相冊(cè)軟件摘 要:本系統(tǒng)在Android SDK 2.3.3平臺(tái)下進(jìn)展,使用Java語言進(jìn)展開發(fā),使系統(tǒng)具有良好的可移植性和擴(kuò)展性。系統(tǒng)具有動(dòng)態(tài)查看相冊(cè),拍攝相片,編輯相片,查看相片的詳細(xì)信息等功能,用戶可以針對(duì)*相片分享到新浪微博,新浪微

9、博分享的初次使用需授權(quán)、認(rèn)證以及賬號(hào)綁定,下次使用無需再次輸入賬號(hào)和密碼。本程序在開發(fā)平臺(tái)上運(yùn)行之后產(chǎn)生可以直接安裝在Android 2.3.3版本手機(jī)上的apk文件,并且完美運(yùn)行。關(guān)鍵詞:Android SDK, Linu*, 新浪微博, 授權(quán), 分享, apkAbstract:Android is the open source mobile operating system based on the Linu* platform which Google pany launched in 2007, with Android version changed from 1.1 to 4.2

10、.2 so far, Android mobile application service is more and more accepted, and widely favored by users, mobile phone photo album application is one of the many Android applications.This system is running in the Android SDK 2.3.3 platform, with the development language of Java makes the system in good

11、portability and scalability. The system has a dynamic view the photo album, shooting photos, edit photos, see photos for detailed information, and so on, users can share to sina micro-blog in a photo, the first use of the function of share in sina micro-blog need to authorization, authentication and

12、 account binding, while users dont have to input account and password for the ne*t time. After running this program on the development platform, there will be generated an apk file that can directly installed in the Android 2.3.3 release of mobile phone.【Key words】Android SDK, Linu*, sina micro-blog

13、, authorization, share, apk 第一章 系統(tǒng)論述1.1課題背景Android手機(jī)操作系統(tǒng)是在2007年推出的基于Linu*平臺(tái)的完全開源手機(jī)操作系統(tǒng),由谷歌開發(fā),引領(lǐng)潮流的手機(jī)制造商把他們的目光投向了這一款手機(jī)操作系統(tǒng)。Android手機(jī)操作系統(tǒng)也也一天天的變得更加成熟。隨著Android手機(jī)的廣泛使用,基于Android平臺(tái)的各種應(yīng)用軟件也變得炙手可熱,這個(gè)市場(chǎng)有很大的開展前景,無數(shù)的軟件開發(fā)商和開發(fā)人員將會(huì)被吸引,然后投入到市場(chǎng)中。目前,Android應(yīng)用市場(chǎng)琳瑯滿目,主要的應(yīng)用市場(chǎng)包括獵豹清理等等,這其中每個(gè)市場(chǎng)中展示的Android應(yīng)用多如牛毛,有官方的,也有非

14、官方的,但是各種應(yīng)用表達(dá)了Android手機(jī)操作系統(tǒng)的時(shí)代性。越來越多免費(fèi)的Android應(yīng)用不僅符合了群眾化的需求,更促進(jìn)了應(yīng)用市場(chǎng)的不斷多樣化的開展。本課題的研究正是處在這樣的一種大環(huán)境下,Android手機(jī)相冊(cè)應(yīng)用在眾多的Android應(yīng)用中只是一個(gè)小角色,但是相冊(cè)軟件對(duì)于移動(dòng)設(shè)備卻是必不可少的。以往人們用數(shù)碼相機(jī)或者其他拍攝相片的設(shè)備拍攝出來的照片只能上傳到電腦上才能更好實(shí)現(xiàn)的瀏覽功能,然而并不是每個(gè)人、每個(gè)時(shí)刻、每個(gè)地方攜帶電腦都是一件輕松的事情。當(dāng)我們出門旅行的時(shí)候,輕松便捷是我們的首選,這時(shí)候,Android移動(dòng)手機(jī)的拍攝功能以及一個(gè)與之配套的相冊(cè)瀏覽功能便能很好的滿足人們的需求

15、,隨拍隨看隨分享的體念讓這款應(yīng)用更具有價(jià)值。1.2 Android系統(tǒng)相冊(cè)軟件現(xiàn)狀 目前,應(yīng)用市場(chǎng)上的相冊(cè)軟件眾多,雖然功能小異,但是每種軟件無論在界面風(fēng)格的設(shè)計(jì)上還是在實(shí)現(xiàn)的設(shè)計(jì)上都獨(dú)具特色。就拿Android系統(tǒng)自帶的幾款相冊(cè)瀏覽工具來說,比擬好的有快圖瀏覽和Gallery 3D兩種。1.2.1快圖瀏覽快圖瀏覽是一個(gè)以文件夾模式為基準(zhǔn)的輕量級(jí)圖片瀏覽器,可以又快又清晰的預(yù)覽縮略圖,同時(shí)它的2D瀏覽體驗(yàn)也極其流暢幻燈片播放、滑動(dòng)切換圖片等功能,此軟件都可以提供;用戶在看圖的時(shí)候如果想處理圖片,這個(gè)軟件也是可以做到的,縮小放大還有裁剪等都可以操作,如圖1.1所示。 圖1.1 快圖瀏覽1.2.2

16、 Gallery 3DGallery 3D是一款具有3D效果的圖片瀏覽器,流動(dòng)式的顯示每個(gè)文件夾中的縮略圖,支持多點(diǎn)觸屏縮放、滑動(dòng)切換圖片、幻燈片播放、調(diào)用系統(tǒng)照相機(jī)、照片的編輯、時(shí)時(shí)分享以及視頻的播放功能,但是缺乏之處就是當(dāng)圖庫(kù)中的圖片過多時(shí)刷新速度過慢的缺點(diǎn)影響了用戶的體驗(yàn)效果,如圖1.2所示。圖1.2 Gallery 3D第二章 Android開發(fā)平臺(tái)2.1 Android的由來 Android一詞最早出現(xiàn)于科幻小說未來夏娃中,外形像人一樣的機(jī)器被來自法國(guó)的作家利爾亞當(dāng)命名為Android。Android公司是由魯賓等人在2003年的創(chuàng)辦一家美國(guó)公司,他把手機(jī)軟件和手機(jī)操作系統(tǒng)設(shè)置為該公

17、司的主要業(yè)務(wù)。2007年Google公司宣布Android是基于Linu*平臺(tái)的開源手機(jī)操作系統(tǒng)的名稱,從此走上了新的舞臺(tái)。2.2 Windows系統(tǒng)中Android開發(fā)平臺(tái)在Eclipse上的搭建對(duì)于一個(gè)開發(fā)者而言,在進(jìn)展Android應(yīng)用的開發(fā)之前,第一步需要完成Android開發(fā)平臺(tái)的搭建。雖然這款全新的Android應(yīng)用開發(fā)軟件在2003年被谷歌公司在I/O大會(huì)上公布,但Eclipse中的ADT依然是之前我們習(xí)慣的開發(fā)平臺(tái),所以這次設(shè)計(jì)的實(shí)現(xiàn)也是在Eclipse中實(shí)現(xiàn)的,針對(duì)這個(gè)要求而言,Android開發(fā)平臺(tái)的搭建是如何在Windows系統(tǒng)中實(shí)現(xiàn),我要來簡(jiǎn)單描述。2.2.1 建立Ja

18、va開發(fā)環(huán)境在Oracle官網(wǎng)中下載最新的版本為JDK 1.7的JDK文件。 最后運(yùn)行查看版本信息,確定環(huán)境配置是否成功。2.2.2 Eclipse的安裝在它的官網(wǎng)中下載Eclipse Classic的最新版本,安裝并把其安裝路徑保存在C盤 ,可以將C:eclipseworkspace設(shè)置工作空間。2.2.3 下載Android SDK訪問,選擇Download the SDK for Window下載并解壓文件,解壓后運(yùn)行SDK Manager.e*e文件,如圖2.2所示是各個(gè)版本的SDK安裝向?qū)?。圖2.2 Android SDK Manager2.2.4 在eclipse中安裝ADT下載A

19、DT-15.0.0.zip文件不用解壓縮,然后在eclipse中選擇help后,點(diǎn)擊Add接著選擇我們之前已經(jīng)下載好的未壓縮的文件,在Name處寫上自己的名字,確定后等待安裝成功。2.2.5 新建一個(gè)模擬器圖2.3 Android模擬器第三章 Android相冊(cè)系統(tǒng)分析3.1 系統(tǒng)可行性分析a.經(jīng)濟(jì)可行性:開發(fā)工具為免費(fèi)的eclipse + ADT,因此開發(fā)本錢非常低。b.技術(shù)可行性:基于Android系統(tǒng)的相冊(cè)軟件完全使用Android系統(tǒng)中相關(guān)組件,分享到新浪微博功能也是使用新浪微博開放平臺(tái)提供SDK中的相關(guān)API 接口,基于Android平臺(tái)的開發(fā)所使用的語言有Java和*ML,具有非常

20、好的可擴(kuò)展性和移植性。c.操作可行性:相冊(cè)應(yīng)用的開發(fā)是在eclipse中進(jìn)展的,開發(fā)出來的應(yīng)用可以直接在模擬器或者實(shí)體Android手機(jī)上進(jìn)展調(diào)試,只有經(jīng)過了仔細(xì)的測(cè)試以及調(diào)試之后才能將應(yīng)用打包為apk文件并進(jìn)展發(fā)布,供用戶使用。也就是說,在用戶使用之前,該應(yīng)用是經(jīng)過良好而嚴(yán)格的測(cè)試的,而且經(jīng)過一大批測(cè)試用戶的使用之后才廣泛發(fā)布到市場(chǎng)上的。同時(shí)在市場(chǎng)上,Android手機(jī)或者其他的移動(dòng)設(shè)備具有很高的占有率,并且各大手機(jī)制造廠商相繼推出具有更高硬件配置的手機(jī)終端,因此可知該相冊(cè)系統(tǒng)在操作上是完全可行的。3.2 系統(tǒng)需求分析當(dāng)該相冊(cè)安裝到Android手機(jī)上并啟動(dòng)后,用戶能夠?yàn)g覽手機(jī)相冊(cè)中的照片,

21、并編輯照片放大、縮小照片;當(dāng)用戶想拍攝照片時(shí),還能夠點(diǎn)擊屏幕中的按鈕直接進(jìn)展照片的拍攝;最重要的是用戶能夠時(shí)時(shí)的對(duì)照片進(jìn)展社區(qū)的分享,例如點(diǎn)擊屏幕中的分享按鈕,相應(yīng)的照片就可以分享到新浪微博,加上要說的話就可以和照片一起分享出去,同時(shí)對(duì)于新浪微博的第一次使用需要授權(quán)和認(rèn)證,當(dāng)?shù)顷懗晒χ缶湍軐?shí)現(xiàn)賬戶的綁定,下一次不需要再次輸入賬號(hào)和密碼就能直接進(jìn)展照片的分享。此應(yīng)用的功能讀者可以通過以上文字了解到。啟動(dòng)應(yīng)用程序如果用戶只需要瀏覽照片,則直接滑動(dòng)選擇想要查看的照片,向左向右能夠?qū)崿F(xiàn)照片的切換瀏覽如果用戶想編輯照片放大、縮小照片,則直接點(diǎn)擊圖片下方的放大、縮小按鈕,實(shí)現(xiàn)放大或者縮小的照片的查看如果

22、用戶覺得*照片不再需要的時(shí)候,可以點(diǎn)擊屏幕中的刪除按鈕,直接將該照片從SD卡的相冊(cè)文件中刪除,但在刪除前會(huì)顯示是否刪除,這時(shí)需要你再次確定,防止錯(cuò)誤的刪除了需要留下的照片。如果用戶想查看具體*照片的詳細(xì)信息,點(diǎn)擊屏幕中的詳細(xì)信息,查看該照片的名字、格式,存放在SD卡中的位置以及拍攝地點(diǎn)。當(dāng)用戶特別喜歡*照片,希望能夠分享該照片時(shí),可以點(diǎn)擊屏幕中的分享,將照片分享到需要分享到的平臺(tái),我們這里以分享到新浪微博為例。如果用戶是第一次使用該應(yīng)用的分享功能,我們需要獲得新浪的授權(quán)認(rèn)證,所以我們要輸入新浪微博的用戶名和密碼,才可以獲得授權(quán)。如果用戶已獲得授權(quán)認(rèn)證,則可以點(diǎn)擊分享到新浪微博按鈕,跳轉(zhuǎn)到分享頁

23、面,輸入想要說的話,你想要分享的照片會(huì)在下方顯示,當(dāng)用戶點(diǎn)擊發(fā)布到新浪微博之后,實(shí)現(xiàn)了照片和文字的分享。3.3 基于Android平臺(tái)手機(jī)相冊(cè)軟件的建立原則考慮周全需求,面面俱到、分布設(shè)計(jì)。堅(jiān)持標(biāo)準(zhǔn)化和系統(tǒng)的可行性。保證系統(tǒng)的穩(wěn)定性、持續(xù)性和平安性。系統(tǒng)人機(jī)界面穩(wěn)定,操作簡(jiǎn)單,能被很容易的理解,使用也很方便。 做一個(gè)Android手機(jī)的相冊(cè)應(yīng)用技術(shù)簡(jiǎn)單,但是做好這個(gè)應(yīng)用卻是很難,一個(gè)良好的系統(tǒng)對(duì)用戶來說應(yīng)該具有親和力。首先,就應(yīng)該保證該應(yīng)用不會(huì)在安裝于用戶Android系統(tǒng)手機(jī)之后,占用系統(tǒng)大量的存而造成死機(jī),長(zhǎng)時(shí)間等待,或者程序響應(yīng)異常;其次,應(yīng)用界面的設(shè)計(jì)會(huì)大大影響用戶對(duì)該應(yīng)用的體驗(yàn)效果,

24、所以應(yīng)用界面的美觀也需要考慮到盡量使設(shè)計(jì)變得更完美。第四章 Android相冊(cè)概要設(shè)計(jì)4.1 系統(tǒng)設(shè)計(jì)目標(biāo)通過手機(jī)相冊(cè)應(yīng)用,讓用戶能夠?yàn)g覽照片、編輯照片、拍攝照片,并將喜歡的照片分享到新浪微博。通過良好的具有親和力的人機(jī)界面,使得用戶更加喜歡拍照和分享身邊的景象。4.2 系統(tǒng)模塊設(shè)計(jì)4.2.1 系統(tǒng)功能模塊劃分系統(tǒng)概要設(shè)計(jì)中的一個(gè)重要環(huán)節(jié)就是確定該系統(tǒng)的模塊構(gòu)成,以及構(gòu)成系統(tǒng)的這些模塊之間的聯(lián)系。因而在進(jìn)展Android手機(jī)相冊(cè)概要設(shè)計(jì)時(shí),在分析系統(tǒng)的根底之上,確定了該系統(tǒng)應(yīng)該具有的模塊如下列圖4.1所示。相冊(cè)客戶端用戶瀏覽照片拍攝照片分享照片刪除照片照片詳細(xì)信息編輯照片相信信息陸新浪微博授權(quán)

25、認(rèn)證享照片分享到新浪微博圖4.1 系統(tǒng)功能模塊圖4.2.2 系統(tǒng)總體構(gòu)造設(shè)計(jì)系統(tǒng)總體構(gòu)造設(shè)計(jì)是在系統(tǒng)功能模塊劃分的根底之上確定各個(gè)模塊之間的相互關(guān)系。例如:在瀏覽照片時(shí)如果在相冊(cè)文件夾中沒有發(fā)現(xiàn)照片,則需要調(diào)用拍攝照片功能模塊確定用戶是否決定拍照并返回照片;只有通過了新浪微博的授權(quán)和認(rèn)證之后,才能分享照片到新浪微博。相冊(cè)應(yīng)用沒有想象中的則簡(jiǎn)單,實(shí)際上它的容很復(fù)雜。在界面布局方面,采用Android UI技術(shù),使系統(tǒng)具有良好的布局和美觀的操作界面,通過屏幕點(diǎn)擊或者觸摸進(jìn)展操作,使用戶可以簡(jiǎn)單明了的操作同時(shí)也不缺乏樂趣。在系統(tǒng)的平安方面,在分享照片到新浪微博時(shí),采用的是OAuth 2.0Open

26、the Authentication的認(rèn)證方式。這種協(xié)議會(huì)保證用戶的信息平安,不會(huì)被第三方應(yīng)用觸及。因?yàn)橛脩糨斎氲男畔⑹峭耆c新浪微博的效勞器進(jìn)展交互的。OAuth當(dāng)中有四種角色:第一種:Service Provider效勞提供者,一般是,一些受限制的資源通常被保存在這些中。只有用戶提供用戶名和密碼來確認(rèn)自己的身份才可以查看到相關(guān)的資源信息。第二種:User用戶,用戶可以通過提供的用戶名和密碼保存私人的信息,例如照片、日記和金錢交易等等。這些最隱私的信息用戶需要將其共享給其他但又希望不被公開。第三種:Consumer客戶,客戶是希望用戶私人信息可以被訪問的應(yīng)用程序,想要訪問相應(yīng)的資源必須得到C

27、onsumer授權(quán)。第四種:Protected Resources被保護(hù)的資源,比方備忘錄,照片等等。以上四種角色在認(rèn)證時(shí)的關(guān)系如圖4.2所示:圖4.2 OAuth 角色關(guān)系新浪微博OAuth 2.0的認(rèn)證過程是:在新浪微博開放平臺(tái)注冊(cè)應(yīng)用,新浪為該應(yīng)用提供相應(yīng)的appId,appSecret,callbackUrl,組裝認(rèn)證url,以WebView為橋梁,向開發(fā)平臺(tái)認(rèn)證中心發(fā)起授權(quán)。應(yīng)用的出處將由認(rèn)證中心判斷,合法跳轉(zhuǎn)到用戶授權(quán)界面,賬號(hào)和密碼在被用戶輸入后就表示同意授權(quán)向認(rèn)證中心發(fā)起授權(quán)。授權(quán)請(qǐng)求會(huì)由認(rèn)證中心處理,以callbackUrl加參數(shù)的方式Redirect,這是攔截Redirec

28、t url后附帶的參數(shù),通過這個(gè)可以知道認(rèn)證結(jié)果。open_id,access_token,e*pires_in等參數(shù),這些參數(shù)將在認(rèn)證成功后獲得,有了這些數(shù)據(jù)就可以向新浪微博開放平臺(tái)的業(yè)務(wù)層接口發(fā)起請(qǐng)求了。如圖4.3所示為OAuth 2.0的認(rèn)證流程:圖4.3 OAuth 2.0認(rèn)證原理4.2.3 系統(tǒng)模塊用例分析照片瀏覽模塊功能描述:當(dāng)進(jìn)入應(yīng)用程序之后,屏幕上展現(xiàn)給用戶的是相片文件夾中的首照片,用戶可以通過左右滑動(dòng)屏幕實(shí)現(xiàn)照片瀏覽的動(dòng)態(tài)切換。參與者:用戶。前置條件:前一照片。后置條件:后一照片。如下列圖4.4所示:用戶戶照片瀏覽圖4.4 用戶瀏覽照片用例圖拍攝照片模塊功能描述:當(dāng)用戶想要拍

29、攝照片時(shí),可以通過點(diǎn)擊菜單按鈕選擇拍照。參與者:用戶。前置條件:點(diǎn)擊拍攝按鈕。后置條件:通過拍照傳回來相片到相冊(cè)文件夾中。該模塊的用例圖如下列圖4.5所示:用戶拍攝照片圖4.5 拍照用例圖分享照片到新浪微博模塊功能描述:如果用戶是第一次使用分享功能,則需要先輸入賬號(hào)和密碼進(jìn)展新浪微博的授權(quán)和認(rèn)證;如果用戶已經(jīng)得到新浪微博的授權(quán),則可以直接分享照片到新浪微博。參與者:用戶。前置條件:用戶具有新浪微博的賬號(hào)和密碼。后置條件:用戶將自己手機(jī)上的照片分享到新浪微博。該模塊的用例圖如下列圖4.6所示:用戶通過授權(quán)認(rèn)證分享照片到新浪微博圖4.6 分享功能模塊用例圖用戶分享照片到新浪微博模塊流程圖如下列圖4

30、.7所示:開場(chǎng)啟動(dòng)應(yīng)用是否授權(quán)是分享照片否輸入賬號(hào)密碼授權(quán)圖4.7 分享功能流程圖刪除照片模塊功能描述:如果用戶對(duì)*一照片不滿意,點(diǎn)擊屏幕中的刪除按鈕即可。參與者:用戶。前置條件:已點(diǎn)擊刪除按鈕。后置條件:該照片從相冊(cè)文件夾中刪除。該模塊的用例圖如下列圖4.8所示:用戶刪除照片圖4.8 刪除照片模塊用例圖查看照片詳細(xì)信息模塊功能描述:當(dāng)用戶點(diǎn)擊查看詳細(xì)信息后,顯示當(dāng)前照片的名字,在SD卡中的存放位置,拍攝地點(diǎn)。參與者:用戶前置條件:已點(diǎn)擊查看詳細(xì)信息按鈕后置條件:顯示照片詳細(xì)信息該模塊的用例圖如下列圖4.9所示:用戶顯示照片詳細(xì)信息圖4.9 查看照片詳細(xì)信息模塊用例圖編輯照片模塊功能描述:當(dāng)用

31、戶點(diǎn)擊圖片下方的放大縮小按鈕時(shí),可以實(shí)現(xiàn)照片的放大和縮小。參與者:用戶。前置條件:以點(diǎn)擊放大或者縮小按鈕。后置條件:照片唄方法或者縮小。該模塊的用例圖如下列圖4.8所示:用戶照片放大照片縮小圖4.8 編輯照片模塊用例圖第五章Android相冊(cè)的功能實(shí)現(xiàn)本應(yīng)用主要實(shí)現(xiàn)了六個(gè)主要的模塊,包括瀏覽模塊;拍攝照片模塊;分享照片到新浪微博模塊;刪除照片模塊;照片詳細(xì)信息模塊和編輯照片模塊,以下針對(duì)于每個(gè)模塊給出具體的實(shí)現(xiàn)方法和實(shí)現(xiàn)之后的效果。5.1瀏覽照片功能模塊實(shí)現(xiàn)應(yīng)用啟動(dòng)之后,用戶直接能看到可以左右滑動(dòng)的縮略圖,在整個(gè)屏幕中顯示的是該縮略圖的大圖,如果用戶選擇了向左滑動(dòng)縮略圖,則屏幕同步顯示前一照片

32、的大圖;反之,則屏幕同步顯示后一照片的大圖。效果如圖5.1所示。圖5.1 瀏覽照片界面核心算法分析:定義一個(gè)Map map的全局變量,然后遍歷的camera相冊(cè)文件夾,判斷里面的文件是否為文件,如果是文件并且是以jpg、jpeg、bmp、png、gif為后綴名的,則將該文件參加map中去,map中的Key為該文件,value為該文件所處的SD卡中的位置。這樣一來,map中保存了camera相冊(cè)文件夾中所有的照片文件。定義一個(gè)適配器ImageAdapter類,該類繼承自類,重寫里面的方法中重要的一個(gè)方法是getView方法,此方法在gallery切換時(shí)自動(dòng)調(diào)用。為了有效的解決Android系統(tǒng)中

33、關(guān)于Bitmap位圖操作的OOMOut Of Memory問題,在獲得位圖的時(shí)候,在設(shè)計(jì)上使用BitmapFactory.decodeStream從文件中取得圖片文件的流,以縮略圖的方式顯示,BitmapFactory.Options options = new BitmapFactory.Options; options.inSampleSize = 2;以上代碼表示獲取的位圖為原圖的四分之一。5.2拍攝照片模塊實(shí)現(xiàn)當(dāng)用戶在瀏覽照片的同時(shí)有了拍攝照片的需求后,用戶可以按下菜單按鈕,選擇拍照菜單項(xiàng)進(jìn)展拍照,如果用戶對(duì)拍攝的效果滿意的話,點(diǎn)擊確定按鈕從而拍攝的照片會(huì)自動(dòng)存放到camera文件夾中

34、,然后又返回瀏覽照片的界面上,如果用戶對(duì)拍攝的效果不是很滿意,用戶可以點(diǎn)擊取消按鈕,然后重新拍攝。如圖5.2所示。圖5.2 拍攝照片界面核心算法分析:其中的MediaStore.ACTION_IMAGE_CAPTURE為系統(tǒng)的照相機(jī)的功能,這里定義一個(gè)指向系統(tǒng)照相機(jī)的意向,當(dāng)點(diǎn)擊拍照菜單項(xiàng)的之后,自動(dòng)從原來的Activity轉(zhuǎn)到系統(tǒng)拍照的Activity,第二個(gè)方法為帶返回?cái)?shù)據(jù)的啟動(dòng)意向,TAKE_PHOTOS為自定義的常量,代表請(qǐng)求參數(shù)。重寫onActivityResult方法,當(dāng)請(qǐng)求碼與TAKE_PHOTOS相等時(shí),取出系統(tǒng)照相機(jī)拍攝后的照片,Bundle bundle = data.ge

35、tE*tras;Bitmap bitmap = Bundlebundle.getdata;當(dāng)取出照片之后,將照片文件寫入相冊(cè)文件夾camera之中,在寫入文件的同時(shí),考慮到的一個(gè)問題就是如何給照片起名。因?yàn)榕臄z照片是在不同的時(shí)間拍攝的,為了保證文件名字在一樣目錄下必須唯一的特性,在實(shí)現(xiàn)的時(shí)候?qū)⒄掌臄z的時(shí)間設(shè)置為照片的文件名字。5.3 分享照片到新浪微博模塊實(shí)現(xiàn)如果用戶是第一次使用分享功能,就需要輸入用戶名和密碼獲得新浪微博的授權(quán)認(rèn)證,認(rèn)證成功后用戶就能夠成功分享。如圖5.3所示。圖5.3 授權(quán)到新浪微博界面核心算法分析:;其中CONSUMER_KEY為新浪微博開發(fā)平臺(tái)分配給每個(gè)第三方的app

36、key,用于鑒別身份,顯示來源等功能。當(dāng)點(diǎn)擊授權(quán)到新浪微博按鈕時(shí),頁面跳轉(zhuǎn)到新浪微博的授權(quán)和認(rèn)證頁面。當(dāng)用戶授權(quán)認(rèn)證成功之后,為了實(shí)現(xiàn)用戶賬號(hào)的綁定,需要獲得access_token訪問令牌和e*pires_in剩余有效時(shí)間并保存到本地,下一次直接從本地文件中讀取即可,這樣就可以防止用戶每次登陸的麻煩,方便了用戶的使用。當(dāng)用戶已經(jīng)成功實(shí)現(xiàn)了新浪微博的授權(quán)和認(rèn)證之后,即實(shí)現(xiàn)了用戶賬號(hào)的綁定功能,用戶可以直接對(duì)需要分享的圖片進(jìn)展描述并分享到新浪微博。效果如圖5.4所示。圖5.4 分享到新浪微博界面核心算法分析:取得保存在本地上的access_token訪問令牌和e*pires_in剩余有效時(shí)間,實(shí)

37、現(xiàn)自動(dòng)登陸,無需用戶再次輸入同戶名和密碼,調(diào)用StatusesAPI中的upload方法,實(shí)現(xiàn)文字和圖片的上傳,實(shí)現(xiàn)真正的分享。5.4 刪除照片模塊實(shí)現(xiàn)當(dāng)用戶對(duì)*照片不滿意的時(shí)候,可以點(diǎn)擊屏幕上的刪除按鈕,對(duì)照片進(jìn)展刪除。但是在真正刪除之前,系統(tǒng)會(huì)給用戶確定或者取消的提示以防止用戶誤刪除操作。效果如圖5.5所示。圖5.5 刪除照片界面核心算法分析:為刪除按鈕設(shè)置監(jiān)聽,監(jiān)聽為一個(gè)信息警告,當(dāng)用戶選擇確定時(shí),又實(shí)現(xiàn)一個(gè)監(jiān)聽,此時(shí)照片在相冊(cè)文件夾中進(jìn)展刪除;當(dāng)用戶選擇取消時(shí),退出提示并不做任何處理。5.5 照片詳細(xì)信息模塊實(shí)現(xiàn)當(dāng)用戶點(diǎn)擊屏幕中的查看照片詳細(xì)信息按鈕的時(shí)候,出現(xiàn)一個(gè)對(duì)話框,顯示照片的名

38、字、存儲(chǔ)于SD card中的位置和照片拍攝的地點(diǎn)。效果如圖5.6所示。圖5.6 照片詳細(xì)信息界面核心算法分析:為詳細(xì)信息按鈕設(shè)置監(jiān)聽,監(jiān)聽為一個(gè)信息提示框,提示過map中取得的entry對(duì)象獲得照片文件的名稱、位置和拍攝地點(diǎn)。第六章 系統(tǒng)測(cè)試系統(tǒng)的測(cè)試分為單元測(cè)試與集成測(cè)試。單元測(cè)試指對(duì)軟件中的最小的可測(cè)試單元進(jìn)展檢查和驗(yàn)證;集成測(cè)試是在單元測(cè)試的根底上,將所有的模塊按照設(shè)計(jì)要求組裝成系統(tǒng)或者子系統(tǒng)。6.1 單元測(cè)試測(cè)試一:當(dāng)相冊(cè)文件中不存在照片,程序是否會(huì)有相應(yīng)的提示。具體操作:刪除camera相冊(cè)中的所有照片文件,重新啟動(dòng)本應(yīng)用。結(jié)果:顯示相冊(cè)中沒有相片,啟動(dòng)照相機(jī)進(jìn)展拍照。結(jié)論:提示功能正常,不會(huì)出現(xiàn)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論