

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 畢 業(yè) 設(shè) 計(jì)</b></p><p> 題目:基于Android平臺(tái)的手機(jī)應(yīng)用開(kāi)發(fā)—音樂(lè)播放器</p><p> 2011年 5 月 23 日</p><p> 畢業(yè)設(shè)計(jì)(論文)任務(wù)書(shū)</p><p> 題目: 基于android平臺(tái)的手機(jī)應(yīng)用開(kāi)發(fā)-音樂(lè)播放器
2、 </p><p> 一、主要內(nèi)容和基本要求</p><p> “基于android平臺(tái)的手機(jī)應(yīng)用開(kāi)發(fā)-音樂(lè)播放器”是針對(duì)android操作系統(tǒng)手機(jī)用戶的一個(gè)預(yù)研項(xiàng)目。主要研究基于android平臺(tái)的手機(jī)應(yīng)用開(kāi)發(fā),并試圖通過(guò)模擬試驗(yàn),利用相關(guān)的算法,使android操作系統(tǒng)用戶的音樂(lè)播放更加方便,提供更好的服務(wù)。</p><p> 該音樂(lè)播
3、放器集播放、暫停、停止、上一曲、下一曲,音量調(diào)節(jié)、歌詞同步顯示等功能于一體,性能良好,在Android系統(tǒng)中獨(dú)立運(yùn)行。該播放器還擁有對(duì)手機(jī)文件瀏覽器的訪問(wèn)功能、歌曲播放模式、歌詞開(kāi)閉狀態(tài)以及推薦好友等友好性設(shè)置,此外本音樂(lè)播放器將實(shí)現(xiàn)歌詞與音樂(lè)播放同步顯示。</p><p> 于海慶同學(xué)的主要任務(wù)如下:</p><p> 調(diào)研資料,了解并學(xué)習(xí)android 平臺(tái)軟件應(yīng)用開(kāi)發(fā)等相關(guān)知識(shí);
4、</p><p> 2.用Java語(yǔ)言實(shí)現(xiàn)音樂(lè)播放器的所有功能并進(jìn)行相應(yīng)的測(cè)試;</p><p> 3.翻譯英文資料,完成畢業(yè)設(shè)計(jì)論文的撰寫(xiě)。</p><p><b> 二、主要參考資料</b></p><p> [1] E2ECloud工作室編著,深入淺出Google Android,人民郵電出版社</p
5、><p> [2] W.Frank Ableson、Charlie Collins、Robi Sen著,張波、高朝勤、楊越等譯,Google Android揭秘,人民郵電出版社</p><p> [3] 吳亞峰,蘇亞光編著,Android 2.0游戲開(kāi)發(fā)實(shí)戰(zhàn)寶典,人民郵電出版社</p><p> [4] Sayed Y.Hashimi、Satya Komatine
6、ni 、Dave Maclean著,楊越譯,精通Android 2,人民郵電出版社</p><p> [5] Ed Burnette著,張波、高朝勤、楊越等譯,Android基礎(chǔ)教程(第3版),人民郵電出版社</p><p> [6] 王向輝,張國(guó)印,沈潔編著,Android應(yīng)用程序開(kāi)發(fā),清華大學(xué)出版社</p><p> [7] Mark L. Murphy著
7、,李雪飛、吳明暉譯,Android開(kāi)發(fā)入門(mén)教程,人民郵電出版社</p><p> [8] 邵麗萍、邵光亞、張后揚(yáng)編著,Java語(yǔ)言程序設(shè)計(jì)(第3版),清華大學(xué)出版社</p><p> [9]林樹(shù)澤等編著,JAVA 完全自學(xué)手冊(cè),機(jī)械工業(yè)出版社</p><p> [10]Bruce Eckel著,陳昊鵬譯,Java編程思想(第4版),機(jī)械工業(yè)出版社</p&
8、gt;<p> [11] 余志龍 等著,王世江 改編,Google Android SDK開(kāi)發(fā)范例大全(第2版),人民郵電出版社</p><p> [12] 蓋索林編著,王世江改編,Google Android開(kāi)發(fā)入門(mén)指南(第2版),人民郵電出版社</p><p> [13] 李寧 編著,Android/OPhone 開(kāi)發(fā)完全講義,水利水電出版社</p>
9、<p> [14] Reto Meier著,王超譯,Android 2高級(jí)編程(第2版),清華大學(xué)出版社</p><p> [15]李剛 編著,瘋狂Java講義,電子工業(yè)出版社</p><p><b> 三、進(jìn)度要求</b></p><p> 1月17日—1月31日 進(jìn)行相關(guān)調(diào)研,學(xué)習(xí)有關(guān)文獻(xiàn),了解應(yīng)用背景及程序設(shè)計(jì)</
10、p><p> 2月1日—2月20日 完成開(kāi)題報(bào)告以及開(kāi)題答辯</p><p> 2月21日—3月6日 實(shí)現(xiàn)音樂(lè)播放器播放界面及其功能</p><p> 3月7日—3月20日 實(shí)現(xiàn)音樂(lè)播放器播放清單列表管理功能</p><p> 3月21日—4月3日 實(shí)現(xiàn)音樂(lè)播放器應(yīng)用程序管理功能</p><p> 4月4日—4月
11、17日 調(diào)試并改進(jìn)程序,翻譯資料</p><p> 4月18日—5月1日 實(shí)現(xiàn)音樂(lè)播放器文件管理功能</p><p> 5月1日—5月15日 完成畢業(yè)設(shè)計(jì)論文的撰寫(xiě)</p><p> 指 導(dǎo) 教 師: (簽字)</p><p> 專(zhuān)業(yè)負(fù)責(zé)人/系主任: (簽字)</p><
12、;p><b> 摘要</b></p><p> Android是基于Linux內(nèi)核的操作系統(tǒng),是Google公司在2007年11月5日公布的手機(jī)操作系統(tǒng),早期由Google開(kāi)發(fā),后由開(kāi)放手持設(shè)備聯(lián)盟(Open Handset Alliance)開(kāi)發(fā)。2010年末數(shù)據(jù)顯示,僅正式推出兩年的操作系統(tǒng)Android已經(jīng)超越稱(chēng)霸十年的諾基亞(Nokia)Symbian OS系統(tǒng)??梢?jiàn),An
13、droid的發(fā)展前景很好,但是目前android手機(jī)應(yīng)用軟件數(shù)量較少,應(yīng)用軟件的需求量較大。本文主要是對(duì)Android系統(tǒng)上的一款音樂(lè)播放器應(yīng)用程序的設(shè)計(jì)和實(shí)現(xiàn)進(jìn)行討論。本音樂(lè)播放器是利用java語(yǔ)言和Eclipse編寫(xiě)工具等針對(duì)android手機(jī)操作系統(tǒng)的手機(jī)用戶開(kāi)發(fā)的,其集播放、暫停、停止、上一曲、下一曲,歌詞同步顯示等功能于一體,性能良好,在Android系統(tǒng)中獨(dú)立運(yùn)行。該播放器還擁有對(duì)手機(jī)文件瀏覽器的訪問(wèn)功能、歌曲播放模式、歌詞
14、開(kāi)閉狀態(tài)以及推薦好友等友好性設(shè)置。本通過(guò)本次課題研究,進(jìn)一步學(xué)習(xí)和熟練android手機(jī)應(yīng)用軟件開(kāi)發(fā),擴(kuò)展這一領(lǐng)域的知識(shí)。</p><p> 關(guān)鍵詞:Android 操作系統(tǒng) 音樂(lè)播放器</p><p><b> Abstract</b></p><p> Android is based on inner core of the L
15、inux operating system. The mobile phone operating system was released by Google Corporation in November 5, 2007, developed by the Google developers in early periods and by Open Handset Alliance later. At the end of 2010,
16、 data show that only two years of the official launch of Android operating system has transended Nokia Symbian OS system, which is dominated in decade. Obviously, Android development is promising, but now the quantity o
17、f android mobile phon</p><p> Key words:Android Operating System Music Player </p><p><b> 目 錄</b></p><p><b> 摘要I</b></p><p> AbstractII
18、</p><p><b> 目 錄III</b></p><p><b> 引 言1</b></p><p><b> 1背景及意義2</b></p><p> 1.1 本課題的目的和任務(wù)2</p><p> 1.2 本課題的背景
19、2</p><p> 1.3 本課題的意義2</p><p> 1.4 研究現(xiàn)狀3</p><p> 1.4.1音樂(lè)播放器3</p><p> 1.4.2 Android背景3</p><p> 1.4.3 Android SDK開(kāi)發(fā)平臺(tái)3</p><p> 1.4.4 開(kāi)
20、發(fā)工具—Eclipse4</p><p> 1.5 本課題主要研究?jī)?nèi)容4</p><p> 1.6 論文的組織結(jié)構(gòu)5</p><p><b> 2需求分析6</b></p><p> 2.1 Android調(diào)研情況6</p><p> 2.1.1 Android簡(jiǎn)介6<
21、/p><p> 2.1.2Android特性6</p><p> 2.1.3Android基本框架6</p><p> 2.1.4Android系統(tǒng)的四大組件9</p><p> 2.2音樂(lè)播放器調(diào)研情況11</p><p> 2.3系統(tǒng)可行性分析11</p><p> 2.3
22、.1社會(huì)可行性分析11</p><p> 2.3.2 經(jīng)濟(jì)可行性分析11</p><p> 2.3.3技術(shù)可行性分析11</p><p> 2.4 本章小結(jié)12</p><p><b> 3概要設(shè)計(jì)13</b></p><p> 3.1項(xiàng)目概述13</p>&l
23、t;p> 3.1.1開(kāi)發(fā)概況13</p><p> 3.1.2目標(biāo)實(shí)現(xiàn)的主要功能13</p><p> 3.1.3軟硬件資源13</p><p> 3.2 系統(tǒng)模塊設(shè)計(jì)13</p><p> 3.3 功能模塊設(shè)計(jì)15</p><p> 3.3.1系統(tǒng)總體功能模塊15</p>
24、<p> 3.3.2音樂(lè)播放器的基本功能模塊15</p><p> 3.3.3播放清單列表管理功能模塊16</p><p> 3.3.4應(yīng)用程序管理功能模塊16</p><p> 3.3.5擴(kuò)展卡文件管理功能模塊16</p><p> 3.4數(shù)據(jù)庫(kù)設(shè)計(jì)16</p><p> 3.4.1數(shù)
25、據(jù)庫(kù)及字段屬性設(shè)計(jì)16</p><p> 3.4.2音樂(lè)播放器E-R圖17</p><p> 3.5運(yùn)行環(huán)境17</p><p> 3.6本章小結(jié)17</p><p> 4系統(tǒng)的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)19</p><p> 4.1系統(tǒng)的實(shí)現(xiàn)19</p><p> 4.1.1音樂(lè)播
26、放器基本功能模塊的設(shè)計(jì)與實(shí)現(xiàn)19</p><p> 4.1.2播放列表清單管理功能模塊的設(shè)計(jì)與實(shí)現(xiàn)24</p><p> 4.1.3應(yīng)用程序管理功能模塊30</p><p> 4.1.4擴(kuò)展卡文件管理功能模塊32</p><p> 4.2本章小結(jié)37</p><p> 5系統(tǒng)測(cè)試..........
27、.........................................................................................................38</p><p> 5.1 測(cè)試目的38</p><p> 5.2 測(cè)試原則38</p><p> 5.3 測(cè)試方法39</p>
28、<p> 5.3.1 靜態(tài)測(cè)試39</p><p> 5.3.2 動(dòng)態(tài)測(cè)試39</p><p> 5.4 測(cè)試過(guò)程39</p><p> 5.4.1單元測(cè)試39</p><p> 5.4.2集成測(cè)試39</p><p> 5.5 本系統(tǒng)采用的測(cè)試方法40</p><
29、;p> 5.6測(cè)試用例40</p><p> 5.6.1音樂(lè)播放器主界面功能測(cè)試40</p><p> 5.6.2播放列表管理功能測(cè)試41</p><p> 5.6.3程序管理功能測(cè)試42</p><p> 5.6.4擴(kuò)展卡文件管理功能測(cè)試43</p><p> 5.7效果分析44<
30、/p><p> 5.8本章小結(jié)44</p><p><b> 結(jié) 論45</b></p><p><b> 致 謝46</b></p><p><b> 參考文獻(xiàn)47</b></p><p><b> 引 言</b&
31、gt;</p><p> Android是基于Linux內(nèi)核的操作系統(tǒng),是Google公司在2007年11月5日公布的手機(jī)操作系統(tǒng),早期由Google開(kāi)發(fā),后由開(kāi)放手持設(shè)備聯(lián)盟(Open Handset Alliance)開(kāi)發(fā)。它采用了軟件堆層(software stack,又名以軟件疊層)的架構(gòu),主要分為三部分。低層Linux內(nèi)核只提供基本功能;其他的應(yīng)用軟件則由各公司自行開(kāi)發(fā),部分程序以Java編寫(xiě)。 20
32、10年末數(shù)據(jù)顯示,僅正式推出兩年的操作系統(tǒng)Android已經(jīng)超越稱(chēng)霸十年的諾基亞(Nokia)Symbian OS系統(tǒng),采用Android系統(tǒng)主要手機(jī)廠商包括宏達(dá)電(HTC)、三星(SAMSUNG)、摩托羅拉(MOTOROLA)、LG、Sony Ericsson等,使之躍居全球最受歡迎的智能手機(jī)平臺(tái)。本文的音樂(lè)播放器就是基于Android手機(jī)平臺(tái)開(kāi)發(fā)的播放器。</p><p> 音樂(lè)播放器是一種用于播放各種音樂(lè)
33、文件的多媒體播放軟件。它涵蓋了各種音樂(lè)格式的播放工具,比如:MP3播放器,WMA播放器,MP4播放器等。它們不僅界面美觀,而且操作簡(jiǎn)單。</p><p> 目前市場(chǎng)上基于android平臺(tái)上現(xiàn)有的音樂(lè)播放器有開(kāi)心聽(tīng)、叮咚 、QQ音樂(lè)播放器以及天天動(dòng)聽(tīng)。目前這幾款軟件特點(diǎn)各不相同,QQ音樂(lè)播放器是一款帶有精彩音樂(lè)推薦功能的播放器,叮咚音樂(lè)播放器一款帶有獨(dú)創(chuàng)卡拉OK歌詞逐字同步播放,全屏歌手背景頭像功能的播放器,天
34、天動(dòng)聽(tīng)是一款具有支持歌詞和歌曲圖片下載,皮膚隨心更換,更有炫麗震撼的可視化效果,同時(shí)預(yù)置豐富的均衡器效果,支持音效增強(qiáng)功能的播放器,而開(kāi)心聽(tīng)是一款具有極佳的音質(zhì)音效、支持隨時(shí)隨地播放、搜索、下載歌曲,并且能自動(dòng)匹配歌詞和專(zhuān)輯圖片,具備龐大的智能音樂(lè)曲庫(kù)結(jié)合動(dòng)感相冊(cè),甩歌能等功能的音樂(lè)播放器。</p><p> 本文主要對(duì)Android系統(tǒng)上的一款音樂(lè)播放器應(yīng)用程序的設(shè)計(jì)和實(shí)現(xiàn)進(jìn)行討論。該音樂(lè)播放器是使用Java
35、語(yǔ)言,Android開(kāi)發(fā)工具包以及Eclipse編寫(xiě)工具進(jìn)行設(shè)計(jì)實(shí)現(xiàn),其集播放、暫停、停止、上一曲、下一曲,歌詞同步顯示等功能于一體,性能良好,在Android系統(tǒng)中獨(dú)立運(yùn)行。該播放器還擁有對(duì)手機(jī)文件瀏覽器的訪問(wèn)功能、歌曲播放模式、歌詞開(kāi)閉狀態(tài)以及推薦好友等友好性設(shè)置。本通過(guò)本次課題研究,進(jìn)一步學(xué)習(xí)和熟練android手機(jī)應(yīng)用軟件開(kāi)發(fā),擴(kuò)展這一領(lǐng)域的知識(shí)。</p><p><b> 1背景及意義<
36、;/b></p><p> 本章就畢業(yè)設(shè)計(jì)課題的背景及意義進(jìn)行闡述,介紹課題的主要任務(wù)、研究背景和課題意義。對(duì)本課題涉及的音樂(lè)播放器進(jìn)行調(diào)研,了解分類(lèi)、特點(diǎn)等知識(shí),并對(duì)Android發(fā)展的國(guó)內(nèi)外研究現(xiàn)狀和音樂(lè)播放器的國(guó)內(nèi)研究現(xiàn)狀進(jìn)行調(diào)研。規(guī)劃本課題的主要研究?jī)?nèi)容,并對(duì)本論文的組織結(jié)構(gòu)進(jìn)行了簡(jiǎn)單描述。</p><p> 1.1 本課題的目的和任務(wù)</p><p&
37、gt; 課題的主要任務(wù)是對(duì)Android系統(tǒng)上的一款音樂(lè)播放器應(yīng)用程序的設(shè)計(jì)和實(shí)現(xiàn)進(jìn)行討論。該音樂(lè)播放器是使用java語(yǔ)言,Android開(kāi)發(fā)工具包以及Eclipse編寫(xiě)工具進(jìn)行設(shè)計(jì)實(shí)現(xiàn),其集播放、暫停、停止、上一曲、下一曲,歌詞同步顯示等功能于一體,性能良好,在Android系統(tǒng)中獨(dú)立運(yùn)行。該播放器還擁有對(duì)手機(jī)文件瀏覽器的訪問(wèn)功能、歌曲播放模式、歌詞開(kāi)閉狀態(tài)以及推薦好友等友好性設(shè)置。</p><p> 1.
38、2 本課題的背景</p><p> Android是基于Linux內(nèi)核的操作系統(tǒng),是Google公司在2007年11月5日公布的手機(jī)操作系統(tǒng),早期由Google開(kāi)發(fā),后由開(kāi)放手持設(shè)備聯(lián)盟(Open Handset Alliance)開(kāi)發(fā)。它采用了軟件堆層(software stack,又名以軟件疊層)的架構(gòu),主要分為三部分。低層Linux內(nèi)核只提供基本功能;其他的應(yīng)用軟件則由各公司自行開(kāi)發(fā),部分程序以Java編
39、寫(xiě)。 2010年末數(shù)據(jù)顯示,僅正式推出兩年的操作系統(tǒng)Android已經(jīng)超越稱(chēng)霸十年的諾基亞(Nokia)Symbian OS系統(tǒng),采用Android系統(tǒng)主要手機(jī)廠商包括宏達(dá)電(HTC)、三星(SAMSUNG)、摩托羅拉(MOTOROLA)、LG、Sony Ericsson等,使之躍居全球最受歡迎的智能手機(jī)平臺(tái)。</p><p> 隨著android手機(jī)操作系統(tǒng)用戶數(shù)量越來(lái)越多,所占的市場(chǎng)份額越來(lái)越高,手機(jī)應(yīng)用軟
40、件需求數(shù)量逐漸增加。但是目前android手機(jī)應(yīng)用軟件數(shù)量較少,應(yīng)用軟件的需求量較大,人性化的應(yīng)用軟件需求量較大。</p><p> 1.3 本課題的意義</p><p> 本項(xiàng)目是一款基于Android手機(jī)平臺(tái)的音樂(lè)播放器,使Android手機(jī)應(yīng)有個(gè)性的多媒體播放器,使手機(jī)顯得更生動(dòng)靈活化,與人們更為接近,讓手機(jī)的主人隨時(shí)隨地出于音樂(lè)視頻的旋律之中,使人們的生活更加的多樣化,也使設(shè)計(jì)
41、者更加熟練Android手機(jī)應(yīng)用開(kāi)發(fā)技術(shù)。</p><p><b> 1.4 研究現(xiàn)狀</b></p><p> 1.4.1音樂(lè)播放器</p><p> 音樂(lè)播放器是一種用于播放各種音樂(lè)文件的多媒體播放軟件。它涵蓋了各種音樂(lè)格式的播放工具,比如:MP3播放器,WMA播放器,MP4播放器等。它們不僅界面美觀,而且操作簡(jiǎn)單。</p>
42、;<p> 目前市場(chǎng)上基于android平臺(tái)上現(xiàn)有的音樂(lè)播放器有開(kāi)心聽(tīng)、叮咚 、QQ音樂(lè)播放器以及天天動(dòng)聽(tīng)。目前這幾款軟件特點(diǎn)各不相同,QQ音樂(lè)播放器是一款帶有精彩音樂(lè)推薦功能的播放器,叮咚音樂(lè)播放器一款帶有獨(dú)創(chuàng)卡拉OK歌詞逐字同步播放,全屏歌手背景頭像功能的播放器,天天動(dòng)聽(tīng)是一款具有支持歌詞和歌曲圖片下載,皮膚隨心更換,更有炫麗震撼的可視化效果,同時(shí)預(yù)置豐富的均衡器效果,支持音效增強(qiáng)功能的播放器,而開(kāi)心聽(tīng)是一款具有極佳
43、的音質(zhì)音效、支持隨時(shí)隨地播放、搜索、下載歌曲,并且能自動(dòng)匹配歌詞和專(zhuān)輯圖片,具備龐大的智能音樂(lè)曲庫(kù)結(jié)合動(dòng)感相冊(cè),甩歌能等功能的音樂(lè)播放器。</p><p> 1.4.2 Android背景</p><p> Android是基于Linux內(nèi)核的操作系統(tǒng),是Google公司在2007年11月5日公布的手機(jī)操作系統(tǒng),早期由Google開(kāi)發(fā),后由開(kāi)放手持設(shè)備聯(lián)盟(Open Handset A
44、lliance)開(kāi)發(fā)。它采用了軟件堆層(software stack,又名以軟件疊層)的架構(gòu),主要分為三部分。低層Linux內(nèi)核只提供基本功能;其他的應(yīng)用軟件則由各公司自行開(kāi)發(fā),部分程序以Java編寫(xiě)。 2010年末數(shù)據(jù)顯示,僅正式推出兩年的操作系統(tǒng)Android已經(jīng)超越稱(chēng)霸十年的諾基亞(Nokia)Symbian OS系統(tǒng),采用Android系統(tǒng)主要手機(jī)廠商包括宏達(dá)電(HTC)、三星(SAMSUNG)、摩托羅拉(MOTOROLA)、L
45、G、Sony Ericsson等,使之躍居全球最受歡迎的智能手機(jī)平臺(tái)。</p><p> 1.4.3 Android SDK開(kāi)發(fā)平臺(tái)</p><p> Android開(kāi)發(fā)環(huán)境包括很多豐富的資源工具來(lái)協(xié)助開(kāi)發(fā)Android應(yīng)用程序,讓這些應(yīng)用軟件可以在Android的實(shí)際硬設(shè)備或Android虛擬設(shè)備上設(shè)計(jì)、調(diào)試、測(cè)試、打包盒安裝應(yīng)用程序。這些工具最重要的是Android模擬器和提供Ec
46、lipse的外掛程序Android開(kāi)發(fā)工具ADT。</p><p> (1)Android仿真器</p><p> Android仿真器是一個(gè)以QEMU位基礎(chǔ)的開(kāi)發(fā)模擬工具。我可以使用它在Android開(kāi)發(fā)環(huán)境上設(shè)計(jì)、調(diào)試和測(cè)試應(yīng)用程序。</p><p> (2)Android仿真器專(zhuān)用SD存儲(chǔ)卡</p><p> 建立一個(gè)虛擬SD存
47、儲(chǔ)卡在主要內(nèi)存上,讓Android仿真器可以擁有一個(gè)SD存儲(chǔ)卡。</p><p> (3)Android調(diào)試監(jiān)控系統(tǒng)DDMS</p><p> 調(diào)試監(jiān)控系統(tǒng)DDMS整合在Dalvik,Dalvik是Android平臺(tái)定制化的虛擬機(jī)。</p><p> 1.4.4 開(kāi)發(fā)工具—Eclipse</p><p> Eclipse是著名的跨平臺(tái)
48、的自由集成開(kāi)發(fā)環(huán)境(IDE)。最初主要用來(lái)Java語(yǔ)言開(kāi)發(fā),但是目前亦有人通過(guò)插件使其作為C++、Python、PHP等其他語(yǔ)言的開(kāi)發(fā)工具。 Eclipse的本身只是一個(gè)框架平臺(tái),但是眾多插件的支持,使得Eclipse擁有較佳的靈活性。在android手機(jī)應(yīng)用軟件開(kāi)發(fā)中ADT插件與Eclipse集成,提供了一些工具來(lái)創(chuàng)建、測(cè)試和調(diào)試android應(yīng)用程序。</p><p> 1.5 本課題主要研究?jī)?nèi)容</
49、p><p> 本課題為應(yīng)用性題目。課題的主要內(nèi)容是對(duì)Android系統(tǒng)上的一款音樂(lè)播放器應(yīng)用程序的設(shè)計(jì)和實(shí)現(xiàn)進(jìn)行討論。該音樂(lè)播放器是使用java語(yǔ)言,Android開(kāi)發(fā)工具包以及Eclipse編寫(xiě)工具進(jìn)行設(shè)計(jì)實(shí)現(xiàn),其集播放、暫停、停止、上一曲、下一曲,歌詞同步顯示等功能于一體,性能良好,在Android系統(tǒng)中獨(dú)立運(yùn)行。該播放器還擁有對(duì)手機(jī)文件瀏覽器的訪問(wèn)功能、歌曲播放模式、歌詞開(kāi)閉狀態(tài)以及推薦好友等友好性設(shè)置。&l
50、t;/p><p> 該課題主要研究步驟是調(diào)研目前市場(chǎng)上的音樂(lè)播放器和Android手機(jī)應(yīng)用開(kāi)發(fā)技術(shù),選取開(kāi)發(fā)工具,實(shí)現(xiàn)基于Android平臺(tái)的手機(jī)應(yīng)用—音樂(lè)播放器的設(shè)計(jì)。</p><p> 重點(diǎn)研究的問(wèn)題如下:</p><p> 音樂(lè)播放器的調(diào)研。本課題涉及的音樂(lè)播放器比較了市場(chǎng)上主流的音樂(lè)播放器的特點(diǎn),有其自己主要的特點(diǎn)。大部分音樂(lè)播放器過(guò)于華麗而功能友好性設(shè)置
51、較差。本課題的音樂(lè)播放器界面簡(jiǎn)潔,使用簡(jiǎn)單,友好性體驗(yàn)好。</p><p> (2) Android手機(jī)應(yīng)用開(kāi)發(fā)技術(shù)的調(diào)研。本課題是設(shè)計(jì)并實(shí)現(xiàn)一款基于Android平臺(tái)的手機(jī)音樂(lè)播放器。該音樂(lè)播放器是使用Java語(yǔ)言,Android開(kāi)發(fā)工具包以及Eclipse編寫(xiě)工具進(jìn)行設(shè)計(jì)實(shí)現(xiàn)。因此,需要對(duì)Android手機(jī)應(yīng)用開(kāi)發(fā)技術(shù)深入調(diào)研并學(xué)習(xí)。</p><p> 音樂(lè)播放器的設(shè)計(jì)與實(shí)現(xiàn),其集
52、播放、暫停、停止、上一曲、下一曲,歌詞同步顯示等功能于一體,性能良好,在Android系統(tǒng)中獨(dú)立運(yùn)行。該播放器還擁有對(duì)手機(jī)文件瀏覽器的訪問(wèn)功能、歌曲播放模式、歌詞同步顯示以及推薦好友等友好性設(shè)置。</p><p> 1.6 論文的組織結(jié)構(gòu)</p><p> 本文在第二章是系統(tǒng)需求分析,介紹了Android手機(jī)應(yīng)用軟件開(kāi)發(fā)和音樂(lè)播放器的相關(guān)知識(shí),對(duì)Android手機(jī)操作系統(tǒng)和音樂(lè)播放器等
53、內(nèi)容作了介紹;介紹了本課題可行性分析,其中包括對(duì)本課題的功能的簡(jiǎn)要介紹,以及本系統(tǒng)在社會(huì)、經(jīng)濟(jì)、技術(shù)方面的可行性。</p><p> 第三章是概要設(shè)計(jì),介紹了開(kāi)發(fā)方案,包括開(kāi)發(fā)平臺(tái)、編寫(xiě)語(yǔ)言的選擇等,并且對(duì)本系統(tǒng)進(jìn)行了概要設(shè)計(jì),為以下的實(shí)施工作做好準(zhǔn)備。同時(shí),就每個(gè)模塊的功能進(jìn)行了設(shè)計(jì),共分為4個(gè)模塊。</p><p> 第四章是詳細(xì)設(shè)計(jì),介紹了各功能模塊的具體實(shí)現(xiàn)過(guò)程,并附有相應(yīng)的關(guān)
54、鍵算法(代碼)和各部分的運(yùn)行結(jié)果截圖。</p><p> 第五章介紹了系統(tǒng)的測(cè)試過(guò)程。對(duì)系統(tǒng)的測(cè)試方案,計(jì)劃,測(cè)試用例,測(cè)試過(guò)程等進(jìn)行了介紹,并對(duì)測(cè)試結(jié)果進(jìn)行了總結(jié)。</p><p><b> 2需求分析</b></p><p> 2.1 Android調(diào)研情況</p><p> 2.1.1 Android簡(jiǎn)介&
55、lt;/p><p> Android一詞的本義指“機(jī)器人”,同時(shí)也是Google于2007年11月5日宣布的基于Linux平臺(tái)的開(kāi)源手機(jī)操作系統(tǒng)的名稱(chēng),該平臺(tái)由操作系統(tǒng)、中間件、用戶界面和應(yīng)用軟件組成,號(hào)稱(chēng)是首個(gè)為移動(dòng)終端打造的真正開(kāi)放和完整的移動(dòng)軟件。</p><p> Android是基于Linux內(nèi)核的軟件平臺(tái)和操作系統(tǒng),其Logo如圖2-1所示,早期由Google開(kāi)發(fā)(在中國(guó)的注冊(cè)
56、商標(biāo)名為“安致”),后由開(kāi)放手機(jī)聯(lián)盟(Open Handset Allian)開(kāi)發(fā)。</p><p> 圖2-1 Android Logo</p><p> 2.1.2Android特性</p><p> Android系統(tǒng)有如下的極大特性:</p><p> 應(yīng)用程序框架:支持組建的重用與替換</p><p>
57、; Dalvik虛擬機(jī):專(zhuān)門(mén)為移動(dòng)設(shè)備作了優(yōu)化</p><p> 內(nèi)部集成瀏覽器:該瀏覽器基于開(kāi)源的WEBKIT引擎</p><p> 優(yōu)化的圖形庫(kù):包括2D和3D圖形庫(kù),3D圖形庫(kù)基于OpenGL ES</p><p> SQLITE:用作結(jié)構(gòu)化的數(shù)據(jù)存儲(chǔ)</p><p> 多媒體支持:包括常見(jiàn)的音頻、視頻和靜態(tài)印象文件格式(如M
58、PEG4,H.264,MP3,AAC,AMR,JPG,PNG,GIF)、GSM電話(依賴于硬件)、藍(lán)牙、3G andWiFi(依賴于硬件)、照相機(jī)、GPS、指南針和加速計(jì)(依賴于硬件)</p><p> 豐富的開(kāi)發(fā)環(huán)境:包括設(shè)備模擬器,調(diào)試工具,內(nèi)存及性能分析圖表,和Eclipse集成開(kāi)發(fā)環(huán)境插件。</p><p> 2.1.3Android基本框架</p><p&
59、gt; Android的系統(tǒng)架構(gòu)和其操作系統(tǒng)一樣,采用了分層的架構(gòu)。從架構(gòu)圖看,android分為四個(gè)層,從高層到低層分別是應(yīng)用程序?qū)?、?yīng)用程序框架層、系統(tǒng)運(yùn)行庫(kù)層和linux核心層。 </p><p> 圖2-2Android的基本框架圖</p><p><b> 1.應(yīng)用程序</b></p><p> Android會(huì)同一系列核心應(yīng)
60、用程序包一起發(fā)布,該應(yīng)用程序包包括email客戶端,SMS短消息程序,日歷,地圖,瀏覽器,聯(lián)系人管理程序等。所有的應(yīng)用程序都是使用JAVA語(yǔ)言編寫(xiě)的。</p><p><b> 2.應(yīng)用程序框架</b></p><p> 開(kāi)發(fā)人員也可以完全訪問(wèn)核心應(yīng)用程序所使用的API框架。該應(yīng)用程序的架構(gòu)設(shè)計(jì)簡(jiǎn)化了組件的重用;任何一個(gè)應(yīng)用程序都可以發(fā)布它的功能塊并且任何其它的應(yīng)
61、用程序都可以使用其所發(fā)布的功能塊(不過(guò)得遵循框架的安全性限制)。同樣,該應(yīng)用程序重用機(jī)制也使用戶可以方便的替換程序組件。</p><p> 隱藏在每個(gè)應(yīng)用后面的是一系列的服務(wù)和系統(tǒng), 其中包括;</p><p> * 豐富而又可擴(kuò)展的視圖(Views),可以用來(lái)構(gòu)建應(yīng)用程序, 它包括列表(lists),網(wǎng)格(grids),文本框(text boxes),按鈕(buttons), 甚至可
62、嵌入的web瀏覽器。</p><p> * 內(nèi)容提供器(Content Providers)使得應(yīng)用程序可以訪問(wèn)另一個(gè)應(yīng)用程序的數(shù)據(jù)(如聯(lián)系人數(shù)據(jù)庫(kù)), 或者共享它們自己的數(shù)據(jù)</p><p> * 資源管理器(Resource Manager)提供 非代碼資源的訪問(wèn),如本地字符串,圖形,和布局文件( layout files )。</p><p> * 通知
63、管理器 (Notification Manager) 使得應(yīng)用程序可以在狀態(tài)欄中顯示自定義的提示信息。</p><p> * 活動(dòng)管理器( Activity Manager) 用來(lái)管理應(yīng)用程序生命周期并提供常用的導(dǎo)航回退功能。</p><p> 有關(guān)更多的細(xì)節(jié)和怎樣從頭寫(xiě)一個(gè)應(yīng)用程序,請(qǐng)參考 如何編寫(xiě)一個(gè) Android 應(yīng)用程序.</p><p><b&
64、gt; 3.系統(tǒng)運(yùn)行庫(kù)</b></p><p><b> 1)程序庫(kù)</b></p><p> Android 包含一些C/C++庫(kù),這些庫(kù)能被Android系統(tǒng)中不同的組件使用。它們通過(guò) Android 應(yīng)用程序框架為開(kāi)發(fā)者提供服務(wù)。以下是一些核心庫(kù):</p><p> * 系統(tǒng) C 庫(kù) - 一個(gè)從 BSD 繼承來(lái)的標(biāo)準(zhǔn)
65、C 系統(tǒng)函數(shù)庫(kù)( libc ), 它是專(zhuān)門(mén)為基于 embedded linux 的設(shè)備定制的。</p><p> * 媒體庫(kù) - 基于 PacketVideo OpenCORE;該庫(kù)支持多種常用的音頻、視頻格式回放和錄制,同時(shí)支持靜態(tài)圖像文件。編碼格式包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG 。</p><p> * Surface Manager
66、 - 對(duì)顯示子系統(tǒng)的管理,并且為多個(gè)應(yīng)用程序提 供了2D和3D圖層的無(wú)縫融合。</p><p> * LibWebCore - 一個(gè)最新的web瀏覽器引擎用,支持Android瀏覽器和一個(gè)可嵌入的web視圖。</p><p> * SGL - 底層的2D圖形引擎</p><p> * 3D libraries - 基于OpenGL ES 1.0 APIs實(shí)現(xiàn);
67、該庫(kù)可以使用硬件 3D加速(如果可用)或者使用高度優(yōu)化的3D軟加速。</p><p> * FreeType -位圖(bitmap)和矢量(vector)字體顯示。</p><p> * SQLite - 一個(gè)對(duì)于所有應(yīng)用程序可用,功能強(qiáng)勁的輕型關(guān)系型數(shù)據(jù)庫(kù)引擎。</p><p> 2)Android 運(yùn)行庫(kù)</p><p> And
68、roid 包括了一個(gè)核心庫(kù),該核心庫(kù)提供了JAVA編程語(yǔ)言核心庫(kù)的大多數(shù)功能。</p><p> 每一個(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í)行文件,該格式文件針對(duì)小內(nèi)存使用做了優(yōu)化。同時(shí)虛擬機(jī)是基于寄存器的,所有的類(lèi)都經(jīng)由JAVA編譯器編譯,然后通過(guò)
69、SDK中 的 "dx" 工具轉(zhuǎn)化成.dex格式由虛擬機(jī)執(zhí)行。</p><p> Dalvik虛擬機(jī)依賴于linux內(nèi)核的一些功能,比如線程機(jī)制和底層內(nèi)存管理機(jī)制。</p><p> 4.Linux 內(nèi)核</p><p> Android 的核心系統(tǒng)服務(wù)依賴于 Linux 2.6 內(nèi)核,如安全性,內(nèi)存管理,進(jìn)程管理, 網(wǎng)絡(luò)協(xié)議棧和驅(qū)動(dòng)模型。
70、Linux 內(nèi)核也同時(shí)作為硬件和軟件棧之間的抽象層。</p><p> 2.1.4Android系統(tǒng)的四大組件</p><p> (1)Activity</p><p> 一個(gè)Activity通常展現(xiàn)為一個(gè)可視化的用戶界面。例如,一個(gè)activity可能展現(xiàn)為一個(gè)用戶可以選擇的菜單項(xiàng)列表或者展現(xiàn)一些圖片以及圖片的標(biāo)題。一個(gè)消息服務(wù)應(yīng)用程序可能包含一個(gè)顯示聯(lián)系人
71、列表的activity,一個(gè)編寫(xiě)信息的activity,以及其它一些查看信息和修改應(yīng)用程序設(shè)置的activity。雖然這些activity一起工作,共同組成了一個(gè)應(yīng)用程序,但每一個(gè)activity都是相對(duì)獨(dú)立的。每一個(gè)activity都是Activity(android.app.Activity)的子類(lèi)。</p><p> 一個(gè)應(yīng)用程序可能只包含一個(gè)activity,或者像上面提到的消息服務(wù)程序一樣有多個(gè)act
72、ivity。一個(gè)應(yīng)用程序包含幾個(gè)activity以及各個(gè)activity完成什么樣的功能完全取決于應(yīng)用程序以及它的設(shè)計(jì)。通常每個(gè)應(yīng)用程序都包含一個(gè)在應(yīng)用程序啟動(dòng)后第一個(gè)展現(xiàn)給用戶的activity。在當(dāng)前展現(xiàn)給用戶的activity中啟動(dòng)一個(gè)新的activity,可以實(shí)現(xiàn)從一個(gè)activity轉(zhuǎn)換到另外一個(gè)activity。</p><p> 每個(gè)activity都會(huì)有一個(gè)用于繪制用戶界面的窗口。通常這樣一個(gè)窗
73、口會(huì)填充整個(gè)屏幕,當(dāng)然這個(gè)窗口也可以比屏幕小并漂浮在其他窗口之上。activity還可以使用一些額外的窗口,例如一個(gè)要求用戶響應(yīng)的彈出式對(duì)話框,或者是當(dāng)用戶在屏幕上選擇一個(gè)條目后向用戶展現(xiàn)一些重要信息的窗口。</p><p> 展示activity窗口的可視化內(nèi)容區(qū)域是一些具有層次關(guān)系(很像數(shù)據(jù)結(jié)構(gòu)中的樹(shù))的視圖,而視圖則是由類(lèi)View的子類(lèi)表示的。每個(gè)視圖控制窗口中的一個(gè)矩形區(qū)域。父視圖包含一些子視圖并管理子
74、視圖的布局。位于葉節(jié)點(diǎn)的視圖直接控制并響應(yīng)用戶的動(dòng)作。因此視圖就是activity與用戶交互的接口。例如,一個(gè)顯示圖片的視圖,當(dāng)用戶單擊的時(shí)候它可能會(huì)啟動(dòng)一個(gè)動(dòng)作。Android有許多開(kāi)發(fā)人員可以直接使用的視圖,包括按鈕,文本域,滾動(dòng)條,菜單,復(fù)選框等。</p><p> 通過(guò)調(diào)用Activity.setContentView()方法來(lái)設(shè)置展現(xiàn)activity的窗口的視圖。內(nèi)容視圖則是視圖層次結(jié)構(gòu)中的根節(jié)點(diǎn)視圖
75、。</p><p> (2)Service</p><p> service沒(méi)有用戶界面,但它會(huì)在后臺(tái)一直運(yùn)行。例如,service可能在用戶處理其它事情的時(shí)候播放背景音樂(lè),或者從網(wǎng)絡(luò)上獲取數(shù)據(jù),或者執(zhí)行一些運(yùn)算,并把運(yùn)算結(jié)構(gòu)提供給activity展示給用戶。每個(gè)service都擴(kuò)展自類(lèi)Serivce。</p><p> 多媒體播放器播放音樂(lè)是應(yīng)用servic
76、e的一個(gè)非常好的例子。多媒體播放器程序可能含有一個(gè)或多個(gè)activity,用戶通過(guò)這些activity選擇并播放音樂(lè)。然而,音樂(lè)回放并不需要一個(gè)activity來(lái)處理,因?yàn)橛脩艨赡軙?huì)希望音樂(lè)一直播放下去,即使退出了播放器去執(zhí)行其它程序。為了讓音樂(lè)一直播放,多媒體播放器activity可能會(huì)啟動(dòng)一個(gè)service在后臺(tái)播放音樂(lè)。Android系統(tǒng)會(huì)使音樂(lè)回放service一直運(yùn)行,即使在啟動(dòng)這個(gè)service的activity退出之后。&
77、lt;/p><p> 應(yīng)用程序可以連接到一個(gè)正在運(yùn)行中的service。當(dāng)連接到一個(gè)service后,可以使用這個(gè)service向外暴露的接口與這個(gè)service進(jìn)行通信。對(duì)于上面提到的播放音樂(lè)的service,這個(gè)接口可能允許用戶暫停,停止或重新播放音樂(lè)。</p><p> 與activity以及其它組件一樣,service同樣運(yùn)行在應(yīng)用程序進(jìn)程的主線程中。所以它們不能阻塞其它組件或用戶
78、界面,通常需要為這些service派生一個(gè)線程執(zhí)行耗時(shí)的任務(wù)。</p><p> (3)Broadcase receiver</p><p> broadcase receiver不執(zhí)行任何任務(wù),僅僅是接受并響應(yīng)廣播通知的一類(lèi)組件。大部分廣播通知是由系統(tǒng)產(chǎn)生的,例如改變時(shí)區(qū),電池電量低,用戶選擇了一幅圖片或者用戶改變了語(yǔ)言首選項(xiàng)。應(yīng)用程序同樣也可以發(fā)送廣播通知,例如通知其他應(yīng)用程序某些
79、數(shù)據(jù)已經(jīng)被下載到設(shè)備上可以使用。</p><p> 一個(gè)應(yīng)用程序可以包含任意數(shù)量的boradcase reveiver來(lái)響應(yīng)它認(rèn)為很重要的通知。所有的broadcast receiver都擴(kuò)展自類(lèi)BroadcastReceiver。</p><p> broadcast receiver不包含任何用戶界面。然而它們可以啟動(dòng)一個(gè)activity以響應(yīng)接受到的信息,或者通過(guò)Notifica
80、tionManager通知用戶??梢酝ㄟ^(guò)多種方式使用戶知道有新的通知產(chǎn)生:閃動(dòng)背景燈、震動(dòng)設(shè)備、發(fā)出聲音等等。通常程序會(huì)在狀態(tài)欄上放置一個(gè)持久的圖標(biāo),用戶可以打開(kāi)這個(gè)圖標(biāo)并讀取通知信息。</p><p> (4)Content provider</p><p> 應(yīng)用程序可以通過(guò)content provider訪問(wèn)其它應(yīng)用程序的一些私有數(shù)據(jù),這是Android提供的一種標(biāo)準(zhǔn)的共享數(shù)據(jù)的
81、機(jī)制。共享的數(shù)據(jù)可以是存儲(chǔ)在文件系統(tǒng)中、SQLite數(shù)據(jù)庫(kù)中或其它的一些媒體中。content provider擴(kuò)展自ContentProvider類(lèi),通過(guò)實(shí)現(xiàn)此類(lèi)的一組標(biāo)準(zhǔn)的接口可以使其它應(yīng)用程序存取由它控制的數(shù)據(jù)。然而應(yīng)用程序并不會(huì)直接調(diào)用ContentProvider中的方法,而是通過(guò)類(lèi)ContentResolver。ContentResolver能夠與任何一個(gè)ContentProvider通信,它與ContentProvider
82、合作管理進(jìn)程間的通信。</p><p> 任何時(shí)候當(dāng)Android系統(tǒng)收到一個(gè)需要某個(gè)組件進(jìn)行處理的請(qǐng)求的時(shí)候,Android會(huì)確保處理此請(qǐng)求的組件的宿主進(jìn)程是否已經(jīng)在運(yùn)行,如果沒(méi)有,則立即啟動(dòng)這個(gè)進(jìn)程,當(dāng)請(qǐng)求的組件的宿主進(jìn)程已經(jīng)在運(yùn)行,它會(huì)繼續(xù)查看請(qǐng)求的組件是否可以使用,如果不能立即使用,它會(huì)創(chuàng)建一個(gè)請(qǐng)求的組件的實(shí)例來(lái)響應(yīng)請(qǐng)求。</p><p> 2.2音樂(lè)播放器調(diào)研情況</p
83、><p> 音樂(lè)播放器是一種用于播放各種音樂(lè)文件的多媒體播放軟件。它涵蓋了各種音樂(lè)格式的播放工具,比如:MP3播放器,WMA播放器,MP4播放器等。它們不僅界面美觀,而且操作簡(jiǎn)單。</p><p> 目前市場(chǎng)上基于android平臺(tái)上現(xiàn)有的音樂(lè)播放器有開(kāi)心聽(tīng)、叮咚 、QQ音樂(lè)播放器以及天天動(dòng)聽(tīng)。目前這幾款軟件特點(diǎn)各不相同,QQ音樂(lè)播放器是一款帶有精彩音樂(lè)推薦功能的播放器,叮咚音樂(lè)播放器一款
84、帶有獨(dú)創(chuàng)卡拉OK歌詞逐字同步播放,全屏歌手背景頭像功能的播放器,天天動(dòng)聽(tīng)是一款具有支持歌詞和歌曲圖片下載,皮膚隨心更換,更有炫麗震撼的可視化效果,同時(shí)預(yù)置豐富的均衡器效果,支持音效增強(qiáng)功能的播放器,而開(kāi)心聽(tīng)是一款具有極佳的音質(zhì)音效、支持隨時(shí)隨地播放、搜索、下載歌曲,并且能自動(dòng)匹配歌詞和專(zhuān)輯圖片,具備龐大的智能音樂(lè)曲庫(kù)結(jié)合動(dòng)感相冊(cè),甩歌能等功能的音樂(lè)播放器。</p><p> 2.3系統(tǒng)可行性分析</p&g
85、t;<p> 2.3.1社會(huì)可行性分析</p><p> 當(dāng)今社會(huì)生活緊張,而欣賞音樂(lè)是其中最好的舒緩壓力的方式之一。本項(xiàng)目是一款基于Android手機(jī)平臺(tái)的音樂(lè)播放器,使Android手機(jī)應(yīng)有個(gè)性的多媒體播放器,使手機(jī)顯得更生動(dòng)靈活化,與人們更為接近,讓手機(jī)的主人隨時(shí)隨地出于音樂(lè)視頻的旋律之中,使人們的生活更加的多樣化,也使設(shè)計(jì)者更加熟練Android手機(jī)應(yīng)用開(kāi)發(fā)技術(shù)。</p>
86、<p> 2.3.2 經(jīng)濟(jì)可行性分析</p><p> 本課題來(lái)自3G樂(lè)成培訓(xùn)基地。由于Android SDK和Eclipse是開(kāi)源軟件,完全免費(fèi),市場(chǎng)上的音樂(lè)播放器基本上免費(fèi)或者收費(fèi)15元/月,因此調(diào)研費(fèi)用及開(kāi)發(fā)費(fèi)用較低,經(jīng)濟(jì)上是可行的。</p><p> 2.3.3技術(shù)可行性分析</p><p> 本系統(tǒng)是基于Android平臺(tái)的手機(jī)應(yīng)用開(kāi)發(fā)—
87、音樂(lè)播放器,主要使用Java語(yǔ)言,Android開(kāi)發(fā)工具包以及Eclipse編寫(xiě)工具進(jìn)行設(shè)計(jì)實(shí)現(xiàn)。在開(kāi)發(fā)過(guò)程中,不斷的修正和改正,直至開(kāi)發(fā)出令使用者滿意的系統(tǒng)。</p><p><b> 2.4 本章小結(jié)</b></p><p> 本章主要介紹了三方面的內(nèi)容,一方面是有關(guān)Android的知識(shí),包括Android簡(jiǎn)介、Android 特性、Android基本框架和A
88、ndroid系統(tǒng)的四大組件等,為音樂(lè)播放器的設(shè)計(jì)與實(shí)現(xiàn)奠定了理論基礎(chǔ);一方面是有關(guān)音樂(lè)播放器的調(diào)研,了解了音樂(lè)播放器的基本功能和友好性設(shè)置提供了設(shè)計(jì)基礎(chǔ)。此外是本系統(tǒng)的社會(huì)可行性、經(jīng)濟(jì)可行性、技術(shù)可行性研究,為以下工作奠定理論基礎(chǔ),做好需求分析。</p><p><b> 3概要設(shè)計(jì)</b></p><p><b> 3.1項(xiàng)目概述</b>&
89、lt;/p><p><b> 3.1.1開(kāi)發(fā)概況</b></p><p> 該音樂(lè)播放器使用java語(yǔ)言,Android開(kāi)發(fā)工具包以及Eclipse編寫(xiě)工具進(jìn)行設(shè)計(jì)實(shí)現(xiàn),其集播放、暫停、停止、上一曲、下一曲,歌詞同步顯示等功能于一體,性能良好,在Android系統(tǒng)中獨(dú)立運(yùn)行。該播放器還擁有對(duì)手機(jī)文件瀏覽器的訪問(wèn)功能、歌曲播放模式、歌詞開(kāi)閉狀態(tài)以及推薦好友等友好性設(shè)置。
90、</p><p> 3.1.2目標(biāo)實(shí)現(xiàn)的主要功能</p><p> 音樂(lè)播放器的基本功能,其中包括播放、暫停,上一曲,下一曲,快進(jìn),后退,音量控制,進(jìn)入播放列表等功能;</p><p> 播放清單列表管理功能,其中包括添加播放列表,添加音樂(lè),移除音樂(lè),進(jìn)入擴(kuò)展卡等功能;</p><p> 應(yīng)用程序管理功能,其中包括歌詞顯示和播放模式設(shè)
91、置等功能;</p><p> 擴(kuò)展卡文件管理功能,其中包括添加,全部添加等功能。</p><p> 3.1.3軟硬件資源</p><p> ?。?)硬件配置要求:奔騰4處理器以上微機(jī)或筆記本電腦,內(nèi)存要求大于1GB,安裝所需硬盤(pán)容量最少4GB;</p><p> ?。?)軟件環(huán)境要求:Windows XP或更高版本的操作系統(tǒng),Androi
92、d SDK 2.2及其以上版本,Eclipse 3.5及其以上版本,ADT 0.9.5及其以上版本</p><p> 3.2 系統(tǒng)模塊設(shè)計(jì)</p><p> 本系統(tǒng)具體功能,共包含4個(gè)模塊,分別為:音樂(lè)播放器的基本功能、播放清單列表管理功能、應(yīng)用程序管理功能、擴(kuò)展卡文件管理功能。功能模塊圖,如下圖所示。</p><p> 圖3-1音樂(lè)播放器功能</p&g
93、t;<p> 圖3-2音樂(lè)播放器主界面功能</p><p> 圖3-3播放列表管理功能</p><p> 圖3-4應(yīng)用程序管理功能</p><p> 圖3-5擴(kuò)展卡文件管理功能</p><p> 3.3 功能模塊設(shè)計(jì)</p><p> 3.3.1系統(tǒng)總體功能模塊</p><
94、p> 該音樂(lè)播放器包括音樂(lè)播放器的基本功能模塊、播放清單列表管理功能模塊、應(yīng)用程序管理功能模塊、擴(kuò)展卡文件管理功能模塊。</p><p> 3.3.2音樂(lè)播放器的基本功能模塊</p><p> 播放:播放列表中當(dāng)前的歌曲;</p><p> 暫停:暫停當(dāng)前播放的歌曲;</p><p> 快進(jìn)/快退:快進(jìn)或者快退</p&g
95、t;<p> 上一首/下一首:播放器列表中的上一首(或下一首)歌曲;</p><p> 歌詞顯示:同步顯示歌詞,歌詞與音樂(lè)播放保持同步;</p><p> 進(jìn)入播放清單:打開(kāi)播放清單;</p><p> 進(jìn)入擴(kuò)展卡文件管理:打開(kāi)擴(kuò)展卡文件管理。</p><p> 3.3.3播放清單列表管理功能模塊</p>
96、<p> 歌曲詳細(xì):顯示列表中當(dāng)前選中歌曲的詳細(xì)信息,包含曲目編號(hào)、文件大小、 歌曲名字、專(zhuān)輯等信息;</p><p> 增加:增加SD卡中所要添加的音樂(lè)歌曲;</p><p> 全部移除:移除當(dāng)前列表中的所有音樂(lè)歌曲;</p><p> 分類(lèi)管理:分類(lèi)管理列表中的文件。</p><p>
97、 3.3.4應(yīng)用程序管理功能模塊</p><p> 播放模式:播放模式分為隨機(jī)播放、順序播放、單曲循環(huán)三種模式;</p><p> 3.3.5擴(kuò)展卡文件管理功能模塊</p><p> 本模塊的主要功能是管理擴(kuò)展卡Sdcard目錄下的音樂(lè)文件,包含添加,全部添加等。</p><p><b> 3.4數(shù)據(jù)庫(kù)設(shè)計(jì)</b&g
98、t;</p><p> 數(shù)據(jù)庫(kù),顧名思義,是存放數(shù)據(jù)的倉(cāng)庫(kù)。只不過(guò)這個(gè)倉(cāng)庫(kù)是在計(jì)算機(jī)存儲(chǔ)設(shè)備上,而且數(shù)據(jù)是按一定的格式存放的。數(shù)據(jù)庫(kù)中的數(shù)據(jù)按一定數(shù)據(jù)模型組織、描述和存儲(chǔ),具有較小的重復(fù)度、較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性,并且可以在一定范圍內(nèi)的各種用戶共享。在設(shè)計(jì)數(shù)據(jù)庫(kù)的軟件開(kāi)發(fā)中,需要根據(jù)有待解決的問(wèn)題性質(zhì)、規(guī)模,以及所采用的前端程序創(chuàng)建工具等,做出合適的數(shù)據(jù)類(lèi)型選擇。</p><p>
99、 3.4.1數(shù)據(jù)庫(kù)及字段屬性設(shè)計(jì)</p><p> Filelist主要是保存列表編號(hào)、名字、路徑以及保存時(shí)間。</p><p> 列表字段說(shuō)明:列表序號(hào)_Id、列表名字FileName、保存時(shí)間Stime,如表3-1所示。</p><p> 表3-1列表詳細(xì)信息</p><p> Android自帶一個(gè)MediaStore封閉類(lèi) 專(zhuān)
100、門(mén)來(lái)存儲(chǔ)媒體信息。通過(guò)Uri EXTERNAL_CONTENT_URL來(lái)訪問(wèn)SDcard中的歌曲詳細(xì)信息,歌曲存儲(chǔ)詳細(xì)信息如表3-2所示。</p><p> 表3-2歌曲存儲(chǔ)詳細(xì)信息</p><p> 3.4.2音樂(lè)播放器E-R圖</p><p> 音樂(lè)播放器E—R圖,如圖3-6所示。</p><p><b> 3.5運(yùn)行環(huán)
101、境</b></p><p> 開(kāi)發(fā)環(huán)境:Windows 7</p><p> 開(kāi)發(fā)工具:Eclipse 3.5.2,Android SDK 2.2</p><p><b> 開(kāi)發(fā)語(yǔ)言:Java</b></p><p><b> 3.6本章小結(jié)</b></p><
102、;p> 本章論述了開(kāi)發(fā)方案,包括開(kāi)發(fā)平臺(tái)、編寫(xiě)語(yǔ)言的選擇等,并且對(duì)本系統(tǒng)進(jìn)行了概要設(shè)計(jì),為以下的實(shí)施工作做好準(zhǔn)備。同時(shí),就每個(gè)模塊的功能進(jìn)行了設(shè)計(jì),共分為4個(gè)模塊,同時(shí)對(duì)每一個(gè)模塊進(jìn)行了功能劃分。</p><p> 圖3-6音樂(lè)播放器E-R圖</p><p> 4系統(tǒng)的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 4.1系統(tǒng)的實(shí)現(xiàn)</b&g
103、t;</p><p> 4.1.1音樂(lè)播放器基本功能模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 音樂(lè)播放器基本功能模塊包含播放、暫停、上一曲、下一曲、進(jìn)度條控制、時(shí)間顯示等功能。其界面設(shè)計(jì),如圖4-1所示。</p><p> 圖4-1音樂(lè)播放器主界面</p><p> 其流程圖設(shè)計(jì),如圖4-2所示。</p><p>
104、 當(dāng)播放列表被選擇時(shí),點(diǎn)擊播放圖標(biāo)“”,播放器開(kāi)始播放音樂(lè);點(diǎn)擊暫停圖標(biāo)“”,當(dāng)前播放音樂(lè)暫停。具體實(shí)現(xiàn),關(guān)鍵代碼如下所示。</p><p> protected void onImageButtonPlayTypeClick(View v) {</p><p> switch (mpService.getPlayType()) {</p><p> case
105、 MPService.PLAYTYPE_NORMAL:</p><p> 圖4-2 音樂(lè)播放器主界面流程圖</p><p> mpService.setPlayType(MPService.PLAYTYPE_SHUFFLE);</p><p> mImageButtonPlayType.setImageResource(R.drawable.shuffle_p
106、lay);</p><p><b> break;</b></p><p> case MPService.PLAYTYPE_SHUFFLE:</p><p> mpService.setPlayType(MPService.PLAYTYPE_SIMPLE);</p><p> mImageButtonPlayT
107、ype.setImageResource(R.drawable.sample_play);</p><p><b> break;</b></p><p> case MPService.PLAYTYPE_SIMPLE:</p><p> mpService.setPlayType(MPService.PLAYTYPE_NORMAL);&
108、lt;/p><p> mImageButtonPlayType.setImageResource(R.drawable.normal_paly);</p><p><b> break;</b></p><p><b> default:</b></p><p><b> }</
109、b></p><p><b> }</b></p><p> protected ImageButton.OnClickListener clImageButtonPlayAndPause = </p><p> new ImageButton.OnClickListener() {</p><p><
110、b> @Override</b></p><p> public void onClick(View v) {</p><p> onImageButtonPlayAndPauseClick(v);</p><p><b> }</b></p><p><b> };</b&g
111、t;</p><p> 當(dāng)音樂(lè)在播放過(guò)程中,點(diǎn)擊上一曲圖標(biāo)"",將播放上一首歌曲;點(diǎn)擊下一曲圖標(biāo)“”,將播放下一首歌曲。具體實(shí)現(xiàn),如下所示。</p><p> /** 播放上一首按鈕單擊監(jiān)聽(tīng) */</p><p> protected ImageButton.OnClickListener clImageButtonPrev = </
112、p><p> new ImageButton.OnClickListener() {</p><p><b> @Override</b></p><p> public void onClick(View v) {</p><p> onImageButtonPlayPrevClick(v);</p>
113、<p><b> }</b></p><p><b> /** </b></p><p> * 單擊播放上一首按鈕具體實(shí)現(xiàn)</p><p><b> */</b></p><p> protected void onImageButtonPlayPrevC
114、lick(View v) {</p><p> mpService.playPrev();</p><p><b> }</b></p><p> 音樂(lè)的快進(jìn)和快退是由進(jìn)度條所控制,點(diǎn)擊進(jìn)度條上的任一點(diǎn),音樂(lè)將調(diào)至此時(shí)間開(kāi)始播放。具體實(shí)現(xiàn),如下代碼所示:</p><p><b> /** </b&
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)基于android手機(jī)平臺(tái)的音樂(lè)播放器
- 畢業(yè)設(shè)計(jì)(論文)基于android手機(jī)平臺(tái)的音樂(lè)播放器
- 畢業(yè)設(shè)計(jì)基于android平臺(tái)的音樂(lè)播放器設(shè)計(jì)與開(kāi)發(fā)
- 畢業(yè)論文設(shè)計(jì) 基于android手機(jī)平臺(tái)的音樂(lè)播放器
- 基于android手機(jī)平臺(tái)的音樂(lè)播放器-畢業(yè)論文
- 基于android手機(jī)平臺(tái)的音樂(lè)播放器 (2)
- 【畢業(yè)課題論文】android手機(jī)平臺(tái)音樂(lè)播放器
- 基于android手機(jī)平臺(tái)的音樂(lè)播放器【畢業(yè)論文】
- 畢業(yè)論文基于android手機(jī)平臺(tái)的音樂(lè)播放器
- 389.基于android手機(jī)平臺(tái)的音樂(lè)播放器
- 基于android平臺(tái)的音樂(lè)播放器開(kāi)發(fā)與設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---基于android平臺(tái)的音樂(lè)播放器設(shè)計(jì)與開(kāi)發(fā)(含外文翻譯)
- 基于android 手機(jī)平臺(tái)的音樂(lè)播放器的設(shè)計(jì)【開(kāi)題報(bào)告】
- 基于Android的手機(jī)音樂(lè)播放器的設(shè)計(jì)與開(kāi)發(fā).pdf
- 畢業(yè)設(shè)計(jì)--基于android平臺(tái)的音樂(lè)播放器的設(shè)計(jì)與實(shí)現(xiàn)
- 基于android手機(jī)平臺(tái)的音樂(lè)播放器的設(shè)計(jì)【任務(wù)書(shū)】
- 基于android平臺(tái)的音樂(lè)播放器-畢業(yè)論文
- 畢業(yè)論文——基于android平臺(tái)的音樂(lè)播放器
- 基于android音樂(lè)播放器的設(shè)計(jì)與開(kāi)發(fā)
- 基于安卓平臺(tái)的音樂(lè)播放器設(shè)計(jì)與開(kāi)發(fā)-畢業(yè)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論