我的代碼嘗試從res/raw播放MP3文件。MediaPlayer出現無法解釋的錯誤
代碼:
FileDescriptor fd = appContext.getResources().openRawResourceFd(R.raw.ringtone)
.getFileDescriptor();
player = new MediaPlayer();
try
{
player.setAudioStreamType(AudioManager.STREAM_RING);
player.setDataSource(fd);
player.prepare();
}
catch (IllegalArgumentException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
player = null;
return;
}
catch (IllegalStateException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
player = null;
return;
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
player = null;
return;
}
player.setLooping(true);
player.start();
日誌顯示:
02-21 15:18:18.360:ERROR/PlayerDriver(51):命令PLAYER_SET_DATA_SOURCE完成了錯誤或信息PVMFErrNotSupported 02-21 15:18:18.380:ERROR/MediaPlayer的(693):錯誤(1,-4) 02-21 15:18:18.390:WARN/PlayerDriver(51):PVMFInfoErrorHandlingComplete
player.prepare後()被調用。
我真的沒有提示。 我不會使用MediaPlayer.create(),因爲我需要player.setAudioStreamType(AudioManager.STREAM_RING);
將不勝感激任何幫助......
你嘗試用不同的文件? – Macarse 2010-02-21 14:02:55
我可以使用MediaPlayer.create()播放同一個文件,所以我知道這不是格式問題。 – 2010-02-21 14:36:24