当我运行我的应用程序时,它显示“超出 OpenCore 实例的最大数量”错误。如何解决此错误。 谢谢
最佳答案
如果您实例化 MediaPlayer 的多个实例,则会发生上述情况。
您应该阅读 the lifecycle of the media player and its different states
- 定义一个媒体播放器,例如在类变量范围内
- 根据需要在 Oncreate 方法和 OnResume 方法中实例化它
- 在播放音频的函数中使用 .reset 方法让媒体播放器进入空闲状态
- 使用 .setDataSource 或等效函数使其进入初始化状态
- 然后.为准备状态做好准备
- 然后.开始播放音频
- .stop() 等来停止它
- 完成后使用 .release 函数释放音频资源。
Media Player 被定义为类作用域变量并在 OnCreate() 方法中实例化
private void startPlayingAudio()
{
try {
Uri path1 = Uri.parse("android.resource://com.yourpackagehere./" + R.raw.beep);
mp.reset(); // reset to idle state
mp.setDataSource(this, path1); // from idle to initialised state
mp.prepare();
mp.start();
} catch (Exception ioe) {
Log.e(LOG_TAG, "Error playing the beep sound");
}
}
关于android-emulator - 超过android中OpenCore实例的最大数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2432191/