洪麗華?王茂昌
摘 要:音樂播放器在人們的生活、學習、研究等方面起著越來越重要的作用,本文主要研究基于Android系統(tǒng)的音樂播放器的設計與實現(xiàn),從設計、功能、編碼、測試等方面進行論述。
關鍵詞:Java;Android系統(tǒng);音樂播放器。
基金項目:本文系福建省教育廳中青年教師教育科研項目資助(項目編號:JB14234)。
由于生活壓力越來越大、生活節(jié)奏越來越快,人們就需要釋放壓力、放松自己,聽音樂是其中的一種方式,而聽音樂就需要音樂播放器。隨著智能手機的迅速普及,基于Android系統(tǒng)的音樂播放器越來越受到人們的青睞。Android系統(tǒng)是用Java語言開發(fā)的,[1]Java語言比起其它程序設計的語言,如C語言、C++、C#、.NET等等,具有不可替代的優(yōu)點,如開放性的、不收費的源代碼。在編程語言中,是最受歡迎、也是最流行的。市場上支持Android系統(tǒng)的設備也是越來越多。[2] 本文主要研究基于Android系統(tǒng)的音樂播放器的設計與實現(xiàn),從設計、功能、編碼、測試等方面進行論述。
1 基于Android系統(tǒng)的音樂播放器的設計
音樂播放器的設計主要包括圖標設計、用戶界面設計這兩個方面。
設計圖標時,得考慮圖標的大小、形狀、顏色及其位置。由于大多數(shù)人對音樂播放器比較熟悉,而且會受到先入為主的影響,因此,我們采用的是大眾化所看到的音樂播放器的藍色小圖標、喇叭形狀,這個小喇叭設置在手機界面的最底端、右下角。既讓用戶容易看得到,又不占用太大的空間。
設計用戶界面時,主要考慮組件的布局和進度條的設置。[3]這款音樂播放器會不會受到用戶的歡迎、用戶的接受程度如何、會不會多次使用或者繼續(xù)使用或者拒絕再次使用,在以上這些方面,用戶界面起著關鍵的作用。[4]另外,用戶在操作過程中,這款音樂播放器是否容易操作、簡單、不煩瑣、不重復;界面是否友好、簡潔大方;組件的布局是否合理、是否利于操作、不能雜亂無章、不能影響進一步地操作;進度條的設置是否合理、是否與操作過程一致;等等,在設計音樂播放器時,得綜合考慮以上的這些因素。
2 基于Android系統(tǒng)的音樂播放器的功能
該款音樂播放器的功能主要有以下八大功能:
1、隨機播放功能:先瀏覽已保存在手機上或者儲存卡里面的歌曲,選擇需要播放的歌曲,然后播放指定的歌曲,這個功能是比較常用的功能;
2、暫停播放功能:暫時停止當前正在播放的歌曲,或者,正在播放歌曲期間,如果手機有接收到短信或者有接到電話,可以先啟動暫停功能,然后再次按下這個暫停按鈕,就會繼續(xù)播放剛才播放的歌曲;
3、停止播放功能:停止播放當前正在播放的歌曲,與一般的開關功能中的關閉功能類似,與暫停播放的功能不同;
4、前進功能:在當前正在播放的歌曲中前進;
5、后退功能:在當前正在播放的歌曲中后退;
6、上一首功能:跳過當前的歌曲,進入上一首歌曲;
7、下一首功能:跳過當前的歌曲,進入下一首歌曲;
8、退出功能:退出播放器,即當前播放器不運行。[5]
3 基于Android系統(tǒng)的音樂播放器的編碼
開發(fā)該款音樂播放器時,主要考慮的是動作事件ActionEvent處理,這就包含事件處理機制的事件源、事件類、監(jiān)聽器等內容.按下按鈕Button,就會產(chǎn)生相應的ActionEvent事件,需要相應的監(jiān)聽器接口ActionListener進行監(jiān)聽和相應的方法actionPerformed(ActionEvent e)來處理事件,可以調用e.getSource() 方法來獲取引發(fā)動作事件的按鈕對象引用,也可以調用 e.getActionCommand()方法來獲取按鈕的標簽或事先為這個按鈕設置的命令名,用按鈕 setActionCommand()方法改變動作命令和標簽。在編碼時,就需要實現(xiàn)implements接口、注冊監(jiān)聽器addActionListener(this)、注銷監(jiān)聽器removeActionListener(this)、重寫方法actionPerformed(ActionEvent e)。[6]
在該款音樂播放器的編碼過程中,具體涉及到的代碼主要有包、類、接口、方法、屬性等等。在MainActivity類中主要有android.os.Bundle、provider.MediaStore、app.Activity、TabActivity、content.Intent、database.Cursor、view.LayoutInflater、view.Menu、widget.AdapterView、OnItemClickListener、ListView、SimpleAdapter、TabHost、android.widget、CheckBox、EditText、ImageView、ListView、Toast、WebView、CalendarView、Spinner、RadioGroup、setAdapter、setOnItemClickListener、onCreateOptionsMenu等等;在OpenImageActivity類中主要有android.app.ListActivity、content.BroadcastReceiver、Context、Intent、IntentFilter、paint、setColor setTextSize、setAlpha、drawColor、drawText、android.provider.MediaStore、ArrayList、onListItemClick、BroadcastReceiver等等;在PlayControlActivity類中主要有widget.Button、ImageButton、onCreate、SeekBar 、TextView 、onResume、registerReceiver、IntentFilter、seekBarId.setProgress、setImageResource、OnClickListener等等;在PlayerService類中主要有Service、MediaPlayer、Handle、IBinder、play、stop、pause、Runnable等等,在AppDataLis類中主要有util.ArrayList、HashMap、Map、getTitle、getSinge、getDuration、getMapData等等。[7]
4 基于Android系統(tǒng)的音樂播放器的測試
測試是研發(fā)音樂播放器過程中的一個重要環(huán)節(jié),設計、編碼、運行、維護等各個環(huán)節(jié)都必須要測試、不能忽略測試。測試過程可采用多種的測試方法、測試工具,并且記錄相關的數(shù)據(jù)。市場上支持Android系統(tǒng)的手機品牌有很多,如三星、小米、紅米、索尼、華為、天翼、中興、聯(lián)想等等,通過不同品牌、不同型號的手機進行測試,從所獲得的數(shù)據(jù)綜合分析,該款音樂播放器的功能、性能等方面符合了設計的要求。[8]
以下圖1--圖3為該款音樂播放器運行時的部分截圖。圖1為在手機上該音樂播放器的圖標所處的位置,容易被用戶看得到、又不占位置,便于用戶操作;圖2為啟動該音樂播放器后進入的界面,包含了設計提出的八大功能;圖3顯示了該音樂播放器在播放過程中的界面,包含播放狀態(tài)的進度條。
參考文獻
[1] 基于Android系統(tǒng)的會議移動白板軟件研發(fā),洪麗華著,廈門:廈門城市職業(yè)學院學報,2015年9月第3期第17卷:66—70.
[2] 淺析《Java程序設計》的微課設計與實現(xiàn),洪麗華著,漳州:漳州職業(yè)技術學院學報,2015年9月第3期第17卷:78—82.
[3] Android應用程序設計[M].張思民主編,北京:清華大學出版社,2013:21.
[4] Java語言與面向對象程序設計(第2版)[M].王行言編著,北京:清華大學出版社,2009:16.
[5] Android開發(fā)與應用[M].張榮主編,北京:人民郵電出版社,2014:112.
[6] Java程序設計實例教程[M].賴萬欽主編,廈門:廈門大學出版社,2010:13.
[7] Android開發(fā)實例大全[M].王東華等編著,北京:電子工業(yè)出版社,2014:117.
[8] 軟件工程[M].高樹芳主編,大連:大連理工大學出版社,2014:78.