MediaPlayer使用技巧 在使用MediaPlayer的使用過程中,有個小技巧需要說明一下: 1、在使用start()播放流媒體之前,需要裝載流媒體資源。這里最好使用prepareAsync()用異步的方式裝載流媒體資源。因為流媒體資源的裝載是會消耗系統(tǒng)資源的,在一些硬件不理想的設(shè)備上,如果使用prepare()同步的方式裝載資源,可能會造成UI界面的卡頓,這是非常影響用于體驗的。因為推薦使用異步裝載的方式,為了避免還沒有裝載完成就調(diào)用start()而報錯的問題,需要綁定MediaPlayer.setOnPreparedListener()事件,它將在異步裝載完成之后回調(diào)。異步裝載還有一個好處就是避免裝載超時引發(fā)ANR((Application Not Responding)錯誤。
2、使用完MediaPlayer需要回收資源。MediaPlayer是很消耗系統(tǒng)資源的,所以在使用完MediaPlayer,不要等待系統(tǒng)自動回收,最好是主動回收資源。 3、使用MediaPlayer最好使用一個Service來使用,并且在Service的onDestory()方法中回收MediaPlayer資源,實際上,就算是直接使用Activity承載MediaPlayer,也最好在銷毀的時候判斷一下MediaPlayer是否被回收,如果未被回收,回收其資源,因為底層調(diào)用的native方法,如果不銷毀還是會在底層繼續(xù)播放,而承載的組件已經(jīng)被銷毀了,這個時候就無法獲取到這個MediaPlayer進而控制它。
|
|