版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第頁(yè)基于平臺(tái)的音樂(lè)播放器開(kāi)發(fā)實(shí)驗(yàn)報(bào)告學(xué)生姓名:溫從林學(xué)號(hào):2班級(jí):計(jì)自1201第一章引言1.1項(xiàng)目背景當(dāng)今社會(huì)的生活節(jié)奏越來(lái)越快,人們對(duì)手機(jī)的要求也越來(lái)越高,由于手機(jī)市場(chǎng)發(fā)展迅速,使得手機(jī)操作系統(tǒng)也出現(xiàn)了不同各類,現(xiàn)在的市場(chǎng)上主要有三個(gè)手機(jī)操作系統(tǒng),,,以及谷歌的操作系統(tǒng),其中占有開(kāi)放源代碼優(yōu)勢(shì)的系統(tǒng)有最大的發(fā)展前景。那么能否在手機(jī)上擁有自己編寫的個(gè)性音樂(lè)播放器呢?能的,谷歌系統(tǒng)就能做到。本文的音樂(lè)播放器就是基于谷歌手機(jī)平臺(tái)的播放器。:是谷歌于2019年公布的開(kāi)放式源代碼手機(jī)系統(tǒng),它的開(kāi)放性就優(yōu)于其它封閉式的手機(jī)系統(tǒng),因此,任何人都可能根據(jù)自己的喜好將手機(jī)系統(tǒng)中的所有功能重新編寫。這使得越來(lái)越多的人關(guān)注這個(gè)操作系統(tǒng)。本次作品音樂(lè)播放器就是基于平臺(tái)的。1.2編寫目的現(xiàn)今社會(huì)生活緊張,而欣賞音樂(lè)是其中最好的舒緩壓力的方式之一,本項(xiàng)目的目的是開(kāi)發(fā)一個(gè)可以播放主流音樂(lè)文件格式的播放器,本設(shè)計(jì)實(shí)現(xiàn)的主要功能是播放3,多種格式的音樂(lè)文件,并且能夠控制播放,暫停,停止,播放列等基本播放控制功能,界面簡(jiǎn)明,操作簡(jiǎn)單。本項(xiàng)目是一款基于手機(jī)平臺(tái)的音樂(lè)播放器,使手機(jī)擁有個(gè)性的多媒體播放器,使手機(jī)顯得更生動(dòng)靈活化,及人們更為接近,讓手機(jī)主人隨時(shí)隨地處于音樂(lè)視頻的旋律之中。使人們的生活更加多樣化。也使設(shè)計(jì)者更加熟練的技術(shù)和其它在市場(chǎng)上的特點(diǎn)。1.3開(kāi)發(fā)環(huán)境、3.2.0第二章系統(tǒng)需求分析2.1功能需求(用例圖分析)根據(jù)項(xiàng)目的目標(biāo),我們可獲得項(xiàng)目系統(tǒng)的基本需求,以下從不同角度來(lái)描述系統(tǒng)的需求,并且使用用例圖來(lái)描述,系統(tǒng)的功能需求,我們分成四部分來(lái)概括,即播放器的基本控制需要,播放列表管理需求,播放器友好性需求和播放器擴(kuò)展卡需求。以下分別描述:2.1.1播放器的用例圖假設(shè)安裝了音樂(lè)播放器的用戶是系統(tǒng)的主要設(shè)計(jì)對(duì)象,其擁有以下操作,啟動(dòng)軟件、播放音樂(lè)、暫停播放、停止播放、退出軟件,其用例圖如下圖2.1播放器基本用例圖2.1.2用例分析用例名稱:?jiǎn)?dòng)軟件參及者:用戶目標(biāo):使得用戶啟動(dòng)軟件并加載手機(jī)和卡上的音頻文件到播放列表前置條件:無(wú)基本事件流:1.用戶啟動(dòng)軟件2.播放器將播放列表中的當(dāng)前的歌曲用例名稱:播放參及者:用戶目標(biāo):使得用戶可以播放在播放列表中選中的歌曲前置條件:播放器正在運(yùn)行基本事件流:1.用戶單擊“播放”按鈕2.播放器將播放列表中的當(dāng)前的歌曲用例名稱:暫停參及者:用戶目標(biāo):使得用戶可以暫停正在播放的歌曲前置條件:歌曲正在播放且未停止和暫?;臼录鳎?.用戶單擊“暫?!卑粹o2.播放器將暫停當(dāng)前的歌曲用例名稱:停止參及者:用戶目標(biāo):使得用戶可以停止正在播放的歌曲前置條件:歌曲正在播放或暫?;臼录鳎?.用戶單擊“停止”按鈕2.播放器將停止當(dāng)前播放的歌曲用例名稱:退出參及者:用戶目標(biāo):使得用戶退出或者后臺(tái)播放音樂(lè)前置條件:程序在運(yùn)行基本事件流:1.用戶按返回鍵2.播放器退出或者進(jìn)入后臺(tái)播放第三章概要設(shè)計(jì)3.1軟件播放流程圖1.啟動(dòng)軟件后,軟件自動(dòng)檢索手機(jī)和卡的音頻文件,并組織顯示成列表.2.點(diǎn)擊列表的歌曲名字。3.播放音樂(lè)。4.點(diǎn)擊暫停,音樂(lè)暫停5.點(diǎn)擊播放轉(zhuǎn)到36.點(diǎn)擊停止停止播放音樂(lè)7.點(diǎn)擊退出。啟動(dòng)軟件自動(dòng)檢索手機(jī)中的音樂(lè)文件,并顯示自動(dòng)檢索手機(jī)中的音樂(lè)文件,并顯示選擇歌曲,點(diǎn)擊播放暫停暫停/退出軟件圖3.1音樂(lè)播放器流程圖第四章界面展示4.1軟件部署系統(tǒng)編譯生成文件,將文件拷到手機(jī)或者卡中,直接打開(kāi)即可安裝。4.2啟動(dòng)軟件打開(kāi)軟件后的界面4.3歌曲列表界面歌曲列表界面4.4播放界面4.5收藏界面4.6在線搜索音樂(lè)界面結(jié)論(1)通過(guò)本次開(kāi)發(fā)解決了諸如卡音樂(lè)文件搜索并顯示、聯(lián)網(wǎng)搜索歌曲等難題,對(duì)安卓的開(kāi)發(fā)有了更深入的認(rèn)識(shí)。(2)通過(guò)對(duì)手機(jī)平臺(tái)的音樂(lè)播放器軟件的開(kāi)發(fā),使我對(duì)音樂(lè)播放器系統(tǒng)的整體設(shè)計(jì)有一個(gè)深入的了解,對(duì)整個(gè)流程也會(huì)有一個(gè)清晰的認(rèn)識(shí)。開(kāi)發(fā)音樂(lè)播放器,要抓住開(kāi)發(fā)的核心部分,音樂(lè)播放器大體由播放主界面、播放列表、菜單、播放設(shè)置、文件瀏覽、歌曲搜索六大核心組成。(3)本次程序設(shè)計(jì),對(duì)播放器的系統(tǒng)結(jié)構(gòu)框架做了精心的構(gòu)思及設(shè)計(jì),采用主要開(kāi)發(fā)工具是4.0語(yǔ)言的支持,的插件,和2.1版本的全面結(jié)合,才使整個(gè)音樂(lè)播放器系統(tǒng)得以實(shí)現(xiàn)。第五章部分源代碼以下給出功能實(shí)現(xiàn)代碼,布局,風(fēng)格等代碼量過(guò)大,放在壓縮文件中7;4; (2500); }(e){a. *Aa. [];存放音樂(lè)文件的數(shù)組 [];存放音樂(lè)文件的標(biāo)題數(shù)組 [];存放音樂(lè)藝術(shù)家的標(biāo)題數(shù)組 [];存放音樂(lè)路徑的標(biāo)題數(shù)組 [];存放總時(shí)間的標(biāo)題數(shù)組 [];存放專輯的標(biāo)題數(shù)組 [];存放文件大小的標(biāo)題數(shù)組 []存放名稱的標(biāo)題數(shù)組 3(); *顯示3信息,其中保存了所有音樂(lè)文件的,用來(lái)確定到底要播放哪一首歌曲,存放音樂(lè)名,用來(lái)顯示在播放界面, *而存放音樂(lè)文件的路徑(刪除文件時(shí)會(huì)用到)*/ 3(){用游標(biāo)查找媒體詳細(xì)信息 ,標(biāo)題,游標(biāo)從0讀取 ,持續(xù)時(shí)間,1 ,藝術(shù)家,2 ,,3顯示名稱,4 ,數(shù)據(jù),5 ,專輯名稱,6 ,專輯,7 },,,)大小,8/**將游標(biāo)移到第一位**//**分別將各個(gè)標(biāo)題數(shù)組實(shí)例化**//**這里獲取路徑的格式是[i],為什么這么寫?是因?yàn)榈年P(guān)系 到的內(nèi)容格式為[子文件夾名/]音樂(lè)文件名,而我們想要得到的是[子文件夾名]音樂(lè)文件名 (i=0;i<();){ [i]=(3); [i]=(0); [i]=(2); [i]=(5)(4);/*****以下是為提供音樂(lè)詳細(xì)信息而生成的******/ [i]=(7); [i]=((1)); [i]=(8); [i]=(4);/**時(shí)間的轉(zhuǎn)換*/ 1000; =/60; =%60; 60;/**返回結(jié)果用的方法把時(shí)間轉(zhuǎn)換成字符類型**/ ("%0202d",,);/**音樂(lè)列表添加監(jiān)聽(tīng)器,點(diǎn)擊之后播放音樂(lè)*/ (<?>0,,, }(e){ ((),"無(wú)法播放此文件",)(); ("",25); =0; ((())>2000){ ((),"再按一次退出程序",)();(0);一級(jí)條目<,>1<,>();1("","【歌手】");<,>2<,>();2("","【專輯】");(1);(2);二組條目第一組二級(jí)科目數(shù)據(jù)<<,>>1<<>>();<,>1<,>();1("","林俊杰");<,>2<,>();2("","周杰倫");1(1);1(2);第二組二級(jí)科目數(shù)據(jù)<<,>>2<<>>();<,>3<,>();3("","<<因你而在>>");<,>4<,>();4("","<<流行主教>>");<,>5<,>();5("","<<第二天堂>>");2(3);2(4);2(5);(1);(2);構(gòu)造函數(shù)參數(shù)12.一級(jí)條目數(shù)據(jù)3.一級(jí)條目布局文件4.一級(jí)條目5.一級(jí)條目顯示信息控件6.二級(jí)條目數(shù)據(jù)7.二級(jí)條目布局文件8.二級(jí)條目9.二級(jí)條目顯示信息控件=0; ((())>2000){ ((),"再按一次退出程序",)();(0); *初始化菜單 ((),"未定義菜單",)(); *獲取屏幕的大小0:寬度1:高度 *獲取文件的后綴名,返回大寫 i=('.'); (i-1){ (i+1)(); *格式化文件大小> 10241024f; ("%.2f");/**歌詞實(shí)體*/ =0開(kāi)始時(shí)間 =0; =歌詞實(shí)體*自定義的對(duì)話框 =-1;提示圖標(biāo) ;提示標(biāo)題 提示內(nèi)容 確定按鈕文本 拒絕按鈕文本 ;中間按鈕文本 =是否啟用取消鍵 提示內(nèi)容 取消鍵事件 ;按鍵處理 設(shè)置取消鍵事件 設(shè)置鍵盤監(jiān)聽(tīng)事件 獲取對(duì)話框布局 設(shè)置標(biāo)題 設(shè)置圖標(biāo) (-1){ =0; 設(shè)置確定按鈕 ((,,1,,)) 設(shè)置拒絕按鈕 ((,,2,,)) 設(shè)置中間按鈕 ((,,3,,)) (0){ 一個(gè)按鈕時(shí),顯示兩邊空間 (1){ 設(shè)置提示消息 設(shè)置提示內(nèi)容布局 (,2,, ((2)){ 1=()(); 1(2); 1((){ (v){ 默認(rèn)事件為關(guān)閉對(duì)話框 1((){ (v){/*以組合*/ /**音樂(lè)列表**/ [];存放音樂(lè)文件的數(shù)組 [];存放音樂(lè)文件的標(biāo)題數(shù)組 [];存放音樂(lè)藝術(shù)家的標(biāo)題數(shù)組 [];存放音樂(lè)路過(guò)的標(biāo)題數(shù)組 [];存放總時(shí)間的標(biāo)題數(shù)組 [];存放專輯的標(biāo)題數(shù)組 [];存放文件大小的標(biāo)題數(shù)組 []存放名稱的標(biāo)題數(shù)組 ;確定一個(gè)標(biāo)識(shí) 裝載布局 ;提示 =0; =1; =2; 顯示倒計(jì)時(shí)的文字 /**選擇子項(xiàng)點(diǎn)擊事件***/ 3(); /**顯示3信息,其中保存了所有音樂(lè)文件的,用來(lái)確定到底要播放哪一首歌曲,存放音樂(lè)名,用來(lái)顯示在播放界面, 存放音樂(lè)文件的路徑(刪除文件時(shí)會(huì)用到)。**/ 3(){ /**用游標(biāo)查找媒體詳細(xì)信息**/ []{標(biāo)題,游標(biāo)從0讀取 ,持續(xù)時(shí)間,1 ,藝術(shù)家,2 ,,3 顯示名稱,4 ,數(shù)據(jù),5 ,專輯名稱,6 ,專輯,7 },,,)大小,8 /**判斷游標(biāo)是否為空,有些地方即使沒(méi)有音樂(lè)也會(huì)報(bào)異常。而且游標(biāo)不穩(wěn)定。稍有不慎就出錯(cuò)了,其次,如果用戶沒(méi)有音樂(lè)的話,不妨可以告知用戶沒(méi)有音樂(lè)讓用戶添加進(jìn)去*/ (()0){ =()("提示:")("你的手機(jī)未找到音樂(lè),請(qǐng)?zhí)砑右魳?lè)")("確定",)(); /**將游標(biāo)移到第一位**/ /**分別將各個(gè)標(biāo)題數(shù)組實(shí)例化**/ /**這里獲取路徑的格式是[i],為什么這么寫?是因?yàn)榈年P(guān)系 到的內(nèi)容格式為[子文件夾名/]音樂(lè)文件名,而我們想要得到的是[子文件夾名]音樂(lè)文件名 (i=0;i<();){ [i]=(3); [i]=(0); [i]=(2); [i]=(5)(4); /**以下是為提供音樂(lè)詳細(xì)信息而生成的**/ [i]=(7); [i]=((1)); [i]=(8); [i]=(4); /**一直將游標(biāo)往下走**/ /**時(shí)間的轉(zhuǎn)換**/ 1000; =/60; =%60; 60; /**返回結(jié)果用的方法把時(shí)間轉(zhuǎn)換成字符類型**/ ("%0202d",,); /**音樂(lè)列表添加監(jiān)聽(tīng)器,點(diǎn)擊之后播放音樂(lè)*/ (<?>0,,, /**長(zhǎng)按后彈出菜單**/ /**當(dāng)顯示的上下文菜單時(shí),為(,,)回調(diào)函數(shù)提供的額外的菜單信息.**/ /**根據(jù)播放音樂(lè)**/ }(e){ ((),"無(wú)法播放此文件",)(); /**根據(jù)播放音樂(lè)**/ /**用戶長(zhǎng)按列表或者按住最右邊的倒三角形發(fā)生的事件**/ []=[]{"播放選中音樂(lè)","收藏選中音樂(lè)","查看歌曲信息","刪除選中歌曲"}; (1); (<>(,1,)); ((()[0]/2)); (0){ }(1){ }(2){ }(3){ ((),"收藏成功",)(); ((),"刪除成功",)(); /**退出程序方法**/ =0; ((())>2000){ ((),"再按一次退出程序",)(); (0);/*以組合*//**播放音樂(lè)界面**/ [];臨時(shí)音樂(lè) [];藝術(shù)家 [];標(biāo)題 [];專輯 ;音樂(lè)名 ;藝術(shù)家 播放按鈕 上一首 下一首 =;已播放時(shí)間 =歌曲時(shí)間 ;進(jìn)度條 調(diào)節(jié)音量 ;定義一個(gè)位置,用于定位用戶點(diǎn)擊列表曲首 當(dāng)前播放位置 ;總時(shí)間 ;專輯 =;循環(huán) =;隨機(jī) =""的狀態(tài) =1;定義播放狀態(tài) =2;暫停狀態(tài) =3;停止 =4進(jìn)度條改變 =1;播放狀態(tài)設(shè)為1 =2;暫停狀態(tài)設(shè)為2 =0;不循環(huán) =1;單體循環(huán) =2;全部循環(huán) =0; ;標(biāo)記 游標(biāo) ;最大音量 當(dāng)前音量 右上角的音量圖標(biāo) ;提示消息 上下文 <,>=<,>()對(duì)象音量面板顯示和隱藏動(dòng)畫 以下是找各個(gè)控件 獲取系統(tǒng)音樂(lè)音量 獲取系統(tǒng)音樂(lè)當(dāng)前音量/**顯示播放按鈕并做監(jiān)聽(tīng)**/ (v){ (v){ (v){ 設(shè)置音量 ,0); /**順序播放**/ (v){ /**按隨機(jī)播放**/ (v){ (i=0;i<;){ [i]=-1; /**在播放布局里先把播放按鈕先刪除并用設(shè)置為透明。然后在代碼添加按鈕**/ ("",)向服務(wù)傳遞數(shù)據(jù) /**暫停**/ /**上一首**/ (1){ ("",1); (<-1){ =0; (i=0;i<;){ [i]=-1; (0){ =-1; (>0){ /**進(jìn)度條改變事件**/ /**下一首**/ (1){ ("",1); (<-1){ =0; (i=0;i<;){ [i]=-1; (-1){ =0; (<-1){/**找到隨機(jī)位置**/ =-1;/**是否在播放**/ (i=0;i<;){ ([i]){/**停止播放音樂(lè)**/ ()發(fā)起后臺(tái)支持 =()接收來(lái)自列表的數(shù)據(jù) /**當(dāng)界面不可見(jiàn)時(shí)候,反注冊(cè)的廣播**/ /**初始化**/ /**在
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 鐵路接觸網(wǎng)設(shè)備絕緣狀態(tài)檢測(cè)考核試卷
- 鋅錳電池的電極材料循環(huán)穩(wěn)定性研究考核試卷
- 漁業(yè)產(chǎn)業(yè)結(jié)構(gòu)升級(jí)-洞察分析
- 線粒體功能與壽命-洞察分析
- 關(guān)于音樂(lè)教學(xué)的開(kāi)題報(bào)告范文
- 2024-2025學(xué)年甘肅省多校高二上學(xué)期期中聯(lián)考 生物試題(解析版)
- 道路保潔垃圾清運(yùn)服務(wù)質(zhì)量保證措施
- 亞目網(wǎng)絡(luò)安全-洞察分析
- 2025年消防安全工作計(jì)劃
- 2024年安全管理人員安全教育培訓(xùn)試題(標(biāo)準(zhǔn)卷)
- 做賬實(shí)操-科學(xué)研究和技術(shù)服務(wù)業(yè)的賬務(wù)處理示例
- 2025年人教版歷史八上期末復(fù)習(xí)-全冊(cè)重難點(diǎn)知識(shí)
- 山東省濱州市2023-2024學(xué)年高一上學(xué)期1月期末考試 政治 含答案
- 儀控技術(shù)手冊(cè)-自控專業(yè)工程設(shè)計(jì)用典型條件表
- 《慶澳門回歸盼祖國(guó)統(tǒng)一》主題班會(huì)教案
- 洗衣房工作人員崗位職責(zé)培訓(xùn)
- 廣東省深圳市光明區(qū)2022-2023學(xué)年五年級(jí)上學(xué)期數(shù)學(xué)期末試卷(含答案)
- XX小區(qū)春節(jié)燈光布置方案
- 《華為銷售人員培訓(xùn)》課件
- 《廣西壯族自治區(qū)房屋建筑和市政工程施工招標(biāo)文件范本(2023年版)》
- 2024年化學(xué)螺栓錨固劑項(xiàng)目可行性研究報(bào)告
評(píng)論
0/150
提交評(píng)論