在Android平臺(tái)下開發(fā)多媒體軟件MediaPlayer
在前文中我們介紹了在Ubuntu下建立Eclipse的Android開發(fā)環(huán)境,我們現(xiàn)在將介紹一下在Android平臺(tái)下如何開發(fā)多媒體軟件MediaPlayer。MediaPlayer可以用來播放視頻和音頻、流媒體。MediaPlayer的生命周期如下圖:
從MediaPlayer的生命周期圖,可以看出使用MediaPlayer不是很復(fù)雜。
最簡(jiǎn)單的流程:初始化->resrt()->setDataSource()->prepare()->start()->……只要簡(jiǎn)單的幾步,就可以播放音頻文件了。
來看看一個(gè)播放音頻的例子吧,看代碼和注釋吧……
1: private Handler handler = new Handler() { |
以上只是一個(gè)簡(jiǎn)單的實(shí)例,要開發(fā)一個(gè)播放器除了UI需要下功夫外,還得注意不少細(xì)節(jié)東西。
Android中音樂播放是一個(gè)后臺(tái)進(jìn)程,以上代碼當(dāng)調(diào)用 onStop()->onCreate() 的時(shí)候會(huì)重復(fù)加載播放列表,造成列表重復(fù)。這就需要用到 onSaveIntanceState(),這樣子在onCreate()里面初始化播放列表的時(shí)候先判斷 Bundle 是否為空,是否能拿到播放列表,如果拿不到在重新初始化。
再者Android自身也提供一個(gè)MediaStore這樣一個(gè)Provider的屬性對(duì)象供我們開發(fā)利用。
【編輯推薦】