我正在使用谷歌语音识别进行持续识别,这意味着为了避免每隔几秒发出一声哔哔声(果冻豆中的错误),我必须将系统音量静音和取消静音。
为此,我使用:
mAudioManager.setStreamMute(AudioManager.STREAM_SYSTEM, true);
和假的一样。
我所遇到的问题是,在许多设备上零星且可重复,系统音量将被锁定"静音,直到卸载或重新启动。
我确保在服务停止时取消静音系统音量,但它似乎不会影响它。
也许是因为AudioManager不是要经常取消静音和静音?欢迎任何帮助。
答案 0 :(得分:3)
setStreamMute的Android文档:
将音频流静音或取消静音。
...
对给定流的静音请求是累积的:AudioManager 可以从一个或多个客户端收到几个静音请求 仅当相同数量的取消静音请求时,流才会取消静音 收到了。
...
这最终成了问题。如果出现导致此锁定的错误,我会调用更多静音而非取消静音。