如果与服务器的连接中断,我的Android应用程序需要每隔5秒向用户发出一次警告音。
所以每5秒执行一次这段代码
MediaPlayer np = MediaPlayer.create(globals.MainContext, R.raw.warn);
np.start();
它是一个短的mp3声音片段,持续时间可能为2秒。它会播放几次然后不再玩了。我查看了日志和“AudioFlinger:它说的音频内存不够”,然后是一堆相关的音频投诉。
是不是因为我一次又一次地创建一个新的MediaPlayer?我认为当声音自动停止时它会被垃圾收集并移除吗?我应该只创建一次并保持对象的周围吗?
有人知道吗?
由于
答案 0 :(得分:1)
按照您的建议,是的,不要每次都创建新的MediaPlayer。因此,创建MediaPlayer对象然后每5秒执行np.start();