我遇到了MediaPlayer.create方法偶尔会返回null的问题,即使音频文件肯定存在。事实上,如果我将创建的调用放入while循环,媒体播放器最终将成功创建。这似乎只发生在我的手机上(HTC Hero正在运行2.1),并且从未在模拟器中出现过。Android SDK Mediaplayer.create随机返回null
这是电话问题吗?或者有什么不同的方式我应该播放这些音频文件?
请注意,我想要动态加载它们,这就是我正在调用getIndentifer。如果有更好的方式来动态播放这些内容,请让我知道。
public void playAudio(String audioFile){
//instance variable of type MediaPlayer
_player = null;
while(_player == null){
_player = MediaPlayer.create(_context, getResources().getIdentifier(audioFile, "raw", _context.getPackageName()));
}
_player.start();
}
感谢。
我在Droid X上有同样的问题。你能找到解决方案吗?我在调用'create'方法之前找到了某种“修复”的地方,我会调用'_player.release()'('release'必须在try/catch中调用) – Darcy 2011-07-14 13:44:00
+1同样的问题。我想播放几个视频文件,有时MediaPlayer.create返回null,我无法播放下一个文件。 – 2016-08-23 18:17:19