安卓系统音量无法解除静音直至卸载

3

我正在使用Google语音识别进行连续识别,这意味着为了避免每隔几秒钟发出的嘟声(在果冻豆中存在的错误),我必须将系统音量静音和取消静音。

为此,我使用以下方法:

mAudioManager.setStreamMute(AudioManager.STREAM_SYSTEM, true);

同样的事情也会发生在false上。

我遇到的问题是,在许多设备上,系统音量偶尔会“锁定”静音状态,直到卸载或重新启动。

我确保在服务停止时取消静音系统音量,但似乎没有影响。

也许是因为AudioManager不打算如此频繁地取消静音和静音?欢迎任何帮助。


1
我因为操作过快而遇到了AudioManager的“死锁”问题。尝试捕获一些logcat行,找出问题的原因。 - XorOrNor
1个回答

3

setStreamMute的Android文档:

静音或取消静音一个音频流。

...

对于给定的音频流,静音请求是累计的: AudioManager可以从一个或多个客户端接收到多个静音请求,并且当接收到相同数量的取消静音请求时才会取消静音。

...

问题就在这里了。如果出现错误导致锁定,则我调用的静音次数比取消静音次数更多。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接