2012-06-19 127 views
1

在我的应用程序中,我尝试以ogg格式播放声音文件,并将其存储在我的应用程序的res目录中的原始文件夹中。当我按下按钮来调用下面的功能时,它会在按下按钮时冻结而不响应。最后,我必须从Eclipse中终止应用程序。关于Logcat中的错误或异常没有任何说明。在Android中播放Ogg声音

在调试模式下,它进入创建功能,永不回头。我究竟做错了什么?

private void playbeep() 
{ 
    mPlayer = MediaPlayer.create(this, R.raw.beep); 
    mPlayer.start(); 
    mPlayer.release(); 
} 

回答

2

您可以同时启动并释放MediaPlayer。试着拿出来看看它是否有效。

mPlayer.release(); 

此外,检查我的岗位here,以确保您有MediaPlayer的设置正确。如果一切都失败了,请尝试使用其他格式的音频文件。

+0

谢谢。我试图删除释放()但不工作。我检查了你的帖子,并且正在以同样的方式初始化它。如果我在onCreate()中做了它,它会改变什么吗? – Erol

+0

如果你在onCreate()或者onCreate()方法中执行它并不重要,但它可以设置它,以便随时调用MediaPlayer,而不仅仅是(例如)当您按下onClick()方法中的按钮时。 – Kurty

+0

或者......可能没有调用playbeep(),并尝试将private void playbeep()更改为public void playbeep()。 – Kurty