999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Android的音樂播放器設計與實現

2017-12-28 23:21:50張琦
電子技術與軟件工程 2017年14期
關鍵詞:按鈕界面音樂

文/張琦

基于Android的音樂播放器設計與實現

文/張琦

本研究課題屬于移動互聯網平臺軟件開發領域,開發基于Android平臺的手機音樂播放器應用軟件。該應用軟件頁面友好,功能完善,支持MP3、WMA等多種格式的音頻文件,主要實現文件掃描、暫停、歌詞同步、上一首、下一首、音量調節、后臺播放等功能,經過多輪測試,能夠在安卓手機上穩定運行。

Android 音樂播放器 軟件開發

1 需求分析

1.1 功能需求分析

作為一款運行在手機上的音樂播放器,必須具備良好的用戶界面,且界面須簡單明朗易于操作。因此音樂播放器的需求可以從音樂播放器的界面來劃分。一般來講,音樂播放器的需求主要分為主界面需求、播放界面需求。

1.1.1 主界面需求

本地列表按鈕:可打開本地播放列表。應用程序從主界面切換到本地播放列表界面,可對列表中的音樂進行操作。

退出按鈕:可退出音樂播放器。

1.1.2 播放界面需求

上一曲/暫停/播放/下一曲按鈕:用戶點擊上一曲或下一曲按鈕,音樂播放器切換到上一曲或下一曲,并播放新的歌曲,用戶點擊播放或暫停按鈕,音樂播放器播放或暫停。

歌詞顯示:播放音樂的同時可同步顯示歌詞。

1.2 性能需求分析

一款優秀的手機軟件需要做到良好的用戶體驗,主要體現在以下兩點:

1.2.1 界面友好,易于操作

主界面和播放界面要做到界面設計友好,操作簡單,設計合理,UI設計要能讓軟件變得有個性有品味,還要讓軟件的操作變得舒適、簡單、自由,充分體現軟件的定位和特點。

1.2.2 響應迅速

能夠迅速且準確的處理用戶的各種請求,各項功能切換要做到不延遲、不卡頓,處理業務邏輯較為復雜或響應時間較長的功能時,需要給出提示,讓用戶知道程序還在運行。

2 系統設計與實現

2.1 系統功能設計

通過對音樂播放器各項功能的需求分析,主要包含以下功能:

2.1.1 播放列表模塊

首次運行軟件時,軟件將自動訪問擴展卡中的音樂文件和LRC文件,然后將音樂文件的信息填充到播放列表中。當用戶點擊音樂時,音樂會自動播放,同時顯示LRC歌詞,用戶也可以進行各種操作,比如上一曲、刪除音樂等。

2.1.2 歌詞顯示模塊

播放音樂時,可以同步顯示歌詞,拖拽進度條,歌詞可做到實時跟隨。

2.1.3 功能菜單模塊

實現歌曲列表的選擇,可以選擇音樂列表,以及掃描內存、退出等功能。

2.2 系統編碼與實現

根據需求分析,音樂播放器的功能由播放列表模塊、歌詞顯示模塊、功能菜單模塊組成。

2.2.1 播放列表模塊

首次運行軟件時,進入音樂播放列表界面,該界面使用了ListView列表控件、SeekBar音軌控件、ToggleButton按鈕控件、TextView文本顯示控件。

(1)本地列表的實現。此功能需要調用setCurrentList(int which)方法,當用戶點擊音樂列表上的音樂文件時,音樂自動播放。點擊時需要調用OnclickListener方法,并在Oncreate()中注冊此方法。

(2)上一曲/暫停/播放/下一曲功能。新建PlayerActivity類,在該類中對選中的MP3文件進行播放、暫停和停止操 作。 在LocalMP3ListActivity類 中 覆 寫onListItemClick()方法,利用intent對象來傳遞得到的MP3文件(即MP3Info對象)到PlayerActivity類中。

2.2.2 歌詞顯示模塊

在GeCiView中通過intent傳遞選中的按鈕,啟動PlayerService,實現在Service中執行播放、暫停和停止。然后編寫對LRC文件進行處理的類LrcProcesser,將時間和歌詞分別讀取到一條單獨的隊列(Queue)中,再將兩條隊列放入List中。在DownloadServive的run()函數中實現對LRC文件的下載,同 時 在 WriteSdcard里 對 MP3Info中 的 getLocalMP3Info()方法中對lrcName和lrcSize進行相應設置。最后在PlayerActivity中,通過Handler控制run函數反復執行不斷比較已經播放的時間與通過LrcProcesser處理后的時間隊列中的時間,在合適的時間取出時間隊列和歌詞隊列中對應的隊列元素,將歌詞隊列顯示在lrcText中,從而實現歌詞的顯示。

2.2.3 功能菜單模塊

(1) 掃 描 功 能。 新 建 GetMusic類, 首 先 定 義array并 將 其 實 例 化,接 著 調 用 ArrayList中 的getLocalMusicArray()方法,然后再實例化Cursor。Cursor是每行的集合,然后Cursor調用moveToFirst()方法,使用moveToFirst()可以定位第一行,再建立while循環,判斷游標是否指向最后一行的位置,如果不是,那么Cursor將遍歷擴展卡里的所有內容,直到到達最后一行停止。

(2)退出功能。用戶點擊退出按鍵后可以退出音樂播放器。該模塊在Activity中重寫onKeyDown方法,可以監聽到退出鍵,也可直接調用OnBackpress方法實現對退出鍵的監聽。

3 結語

本文操使用的是Android基于Windows的操作系統;支持Android2.2以上版本;開發環境是Eclipse 4.3.2和ADT 22.3。該播放器由由播放列表模塊、歌詞顯示模塊、功能菜單模塊組成,能實現基本的上一曲/暫停/播放/下一曲功能,以及掃描、歌詞顯示功能,系統界面設計友好,操作簡單,設計合理,符合音樂播放器的基本需求。

[1]畢廣吉.Java程序設計實例教程[M].北京:冶金工業出版社,2010:34-45.

[2]陳璟,陳平華,李文亮.Android內核分析[J].廣東:廣東工業大學計算機學院,2012:112-115.

[3]高昂.支持動態語言的Android平臺[M].北京:人民郵電出版社,2011:12-23.

作者單位 武漢華夏理工學院 湖北省武漢市 430223

張琦(1989-),男,碩士學位。研究方向為軟件工程、數據庫技術。

猜你喜歡
按鈕界面音樂
這些按鈕能隨便按嗎?
當你面前有個按鈕
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
圣誕音樂路
兒童繪本(2017年24期)2018-01-07 15:51:37
人機交互界面發展趨勢研究
音樂
手機界面中圖形符號的發展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
內心不能碰的按鈕
商業評論(2014年9期)2015-02-28 04:32:41
音樂
主站蜘蛛池模板: 国产精品无码制服丝袜| 亚洲综合极品香蕉久久网| 国产色偷丝袜婷婷无码麻豆制服| 国产91透明丝袜美腿在线| 农村乱人伦一区二区| 99热最新网址| 亚洲AV无码一区二区三区牲色| 亚洲Va中文字幕久久一区| 欧美狠狠干| 国产精品yjizz视频网一二区| 美臀人妻中出中文字幕在线| 2019国产在线| 天天色天天综合| 久久综合色视频| 伊人激情综合| 99偷拍视频精品一区二区| 蜜桃臀无码内射一区二区三区| 亚洲天堂网在线播放| 久久国产精品77777| 99精品国产高清一区二区| 婷婷五月在线视频| 久综合日韩| 中文国产成人精品久久一| 国产av一码二码三码无码| 又粗又硬又大又爽免费视频播放| 欧美日本视频在线观看| 毛片基地视频| 欧美笫一页| 一本大道香蕉久中文在线播放| 91娇喘视频| 伊人久久青草青青综合| 精品一区二区三区波多野结衣| 欧美日韩精品一区二区在线线| 狠狠色噜噜狠狠狠狠色综合久| 国产丝袜丝视频在线观看| 成人午夜视频在线| 午夜a级毛片| 67194亚洲无码| 国产精品人人做人人爽人人添| yjizz国产在线视频网| 亚洲最猛黑人xxxx黑人猛交| 日本精品视频一区二区| 91极品美女高潮叫床在线观看| 伊在人亚洲香蕉精品播放| 亚洲色中色| 久久精品波多野结衣| 成年女人18毛片毛片免费| 精品久久国产综合精麻豆| 国产精品免费p区| 成人伊人色一区二区三区| 国产无码性爱一区二区三区| 麻豆精品在线| 欧美精品亚洲精品日韩专区| 国产青青草视频| 国产va免费精品观看| 55夜色66夜色国产精品视频| 免费一级毛片| 国产精品尹人在线观看| 亚洲视频一区在线| 欧美不卡在线视频| 99热这里只有免费国产精品| 无码精品福利一区二区三区| 欧美69视频在线| 国产视频 第一页| 国产欧美日韩综合在线第一| 久久久久国产精品熟女影院| 99热最新在线| 国产成人1024精品| 亚洲成人网在线播放| 婷婷六月天激情| 亚洲色欲色欲www网| 国产成人无码播放| 亚洲综合色在线| 久久久久国色AV免费观看性色| 国产对白刺激真实精品91| 久青草网站| 99re热精品视频中文字幕不卡| 日韩成人在线网站| 波多野结衣亚洲一区| 免费国产小视频在线观看| 在线无码av一区二区三区| 亚洲人成影院午夜网站|