Android SDK Mediaplayer.create随机返回null

时间:2010-08-28 03:12:03

标签: android media

我遇到一个问题,偶尔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();

}


感谢。

1 个答案:

答案 0 :(得分:1)

SoundPool(Docs)可能需要考虑。