[英]android mediaplayer.create returns null
我正在嘗試使用MediaPlayer Class從URI播放聲音,但是當我嘗試此操作使我的應用程序崩潰時,我注意到mediaplayer.create()函數返回null,我該怎么辦才能解決此問題?
mediaplayer=MediaPlayer.create(this,Uri.parse("http://example.com/files/music.mp3"));
if (mediaplayer==null){
Toast.makeText(this,"media player is null",Toast.LENGTH_LONG).show();
}
else
mediaplayer.start();
現在,當我運行我的應用程序時,它顯示Toast消息“媒體播放器為空”
我在MediaPlayer中遇到了類似的問題
create()方法有時會返回null
我嘗試過的某些文件類型是mp3,wav和m4a
我知道它們沒有損壞,因為我可以在winamp / itunes中播放它們
雖然文檔確實說它支持那些文件類型,但事實證明它實際上不支持
我注意到,當音頻文件(與文件類型無關)為10Mb或更大時,MediaPlayer將返回null。 這使我得出結論,MediaPlayer無法播放高於某些比特率的文件。 大尺寸=更好的質量。
所以我的解決方案是:用128kbps比特率將所有內容轉換為.mp3
編輯:看起來問題出在我的模擬器上,當我使用真正的Android設備時,一切運行正常。 確保您在真實的Android設備上進行測試。 或者以我為例,我創建了另一個具有更好規格的AVD配置文件,並且可以正常工作
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.