Android SDK Mediaplayer.create随机返回null

Mr *_*orn 12 media android

我有一个问题,偶尔MediaPlayer.create方法将返回null,即使音频文件肯定存在.实际上,如果我将调用create创建为while循环,最终将成功创建媒体播放器.这似乎只发生在我的手机上(HTC Hero运行2.1)而且从未出现在模拟器中.

这只是手机的问题吗?或者我应该以不同的方式播放这些音频文件?

请注意,我想动态加载它们,这是因为我正在调用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();

}
Run Code Online (Sandbox Code Playgroud)


谢谢.

QRo*_*hlf 1

SoundPool(文档)可能是值得考虑的。