java - 一段时间后 MediaPlayer 停止播放

标签 java android

如果与服务器的连接断开,我的 Android 应用程序需要每 5 秒左右向用户播放一次警告音。

所以它每 5 秒执行一次这段代码

MediaPlayer np = MediaPlayer.create(globals.MainContext, R.raw.warn);
np.start();

这是一个简短的 mp3 声音 fragment ,可能持续 2 秒。它播放了几次然后不再播放了。我查看了日志和“AudioFlinger:它说音轨内存不足”,然后是一堆相关的音频投诉。

是因为我不断地创建一个新的 MediaPlayer 吗?我认为它会在声音自动停止时收集和删除垃圾?我应该只创建一次并保留对象吗?

有人知道吗?

谢谢

最佳答案

是的,正如您所建议的,不要每次都创建一个新的 MediaPlayer。所以创建 MediaPlayer 对象然后每 5 秒只执行一次 np.start();

关于java - 一段时间后 MediaPlayer 停止播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45991011/

相关文章:

android - 如何卸载 Android Studio 和 Android SDK?

java - 如何自定义解析推送通知以在 Android 应用程序中发送 uri?

java - 将一种类型转换为另一种类型

java - 普罗米修斯 : How to collect metrics for memory consumption of temporary processes?

java - 一旦用户按2次y,下一次n,当输入n时如何添加item1和item2并显示总价

JavaFX - 并发和更新标签

java - java 字符串方法赋值

android - 为什么我的应用在第一次打开时会在 Google Play 上崩溃?

android - 尝试在 php 服务器中上传图片,但它可以发布。在安卓中

android 音频 - soundpool 替代品