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
音樂
主站蜘蛛池模板: 国产h视频免费观看| 亚洲国产中文欧美在线人成大黄瓜 | 中文字幕在线观看日本| 亚洲美女AV免费一区| 丁香婷婷激情网| 91麻豆精品视频| 亚洲人成在线免费观看| 欧美天天干| 国产成年无码AⅤ片在线 | 亚洲A∨无码精品午夜在线观看| 国产中文一区a级毛片视频 | 99re视频在线| 国内自拍久第一页| 真实国产精品vr专区| 国产主播喷水| 国产午夜在线观看视频| 幺女国产一级毛片| 人妻21p大胆| 精品人妻一区无码视频| 欧美一级高清片欧美国产欧美| 国产91高跟丝袜| 成人字幕网视频在线观看| 国产精品成人免费综合| 国产又黄又硬又粗| 国产激爽大片在线播放| 午夜视频免费一区二区在线看| 免费Aⅴ片在线观看蜜芽Tⅴ| 国产毛片片精品天天看视频| 亚洲美女一级毛片| 欧美三级自拍| 欧美激情一区二区三区成人| 久久毛片基地| 99re免费视频| 99久久成人国产精品免费| 在线色国产| 亚洲天堂视频网站| 免费无码AV片在线观看中文| 一级成人欧美一区在线观看| 992tv国产人成在线观看| 国产精品极品美女自在线看免费一区二区| 亚洲天堂精品视频| 亚洲男人在线| 欧美日韩午夜| 成人精品在线观看| 无码内射在线| 国产成人AV男人的天堂| 露脸一二三区国语对白| 国产精品亚洲片在线va| 狠狠综合久久久久综| 日韩欧美国产精品| 欧美日本在线一区二区三区| 国产91高清视频| 性视频久久| 亚洲成人动漫在线| 91国内视频在线观看| 亚洲成人精品| 三上悠亚一区二区| 亚洲AⅤ无码国产精品| 亚洲中文字幕在线观看| 欧洲一区二区三区无码| 国内精品久久人妻无码大片高| 制服丝袜国产精品| 欧美日韩久久综合| 五月天久久综合| 国产成人综合日韩精品无码不卡| 日韩毛片免费观看| 97se亚洲| 日本午夜三级| 91精品国产91久无码网站| 欧美成人a∨视频免费观看| 亚欧成人无码AV在线播放| 特黄日韩免费一区二区三区| 亚洲婷婷六月| 国产无码精品在线播放| 午夜视频www| 亚洲一级毛片在线播放| 99久久精品免费看国产电影| 久久人搡人人玩人妻精品一| 日韩一区二区三免费高清 | 成人无码一区二区三区视频在线观看| 国产系列在线| 色噜噜在线观看|