如何在android中以编程方式打开/关闭辅助功能设置中的所有声音?

时间:2014-04-02 10:08:24

标签: android audio accessibility

在Android 4.0+中有一个选项设置 - >辅助功能 - >转动所有声音。 如果我检查该选项,Android设备上运行的任何应用程序都不会产生任何声音。 我的应用程序必须发出警报声,所以如果有人检查了该选项,该应用程序不会发出任何声音。 因此,每次用户启动应用程序时,我都必须自动取消选中该选项。 通过代码,我该怎么做?

如果有人可以共享一段代码,将会很有帮助。我已经尝试过AudioManager,但只有在启用了移动音频时才有效。

amanger.setRingerMode(AudioManager.RINGER_MODE_NORMAL);

amanger.setStreamMute(AudioManager.STREAM_MUSIC, false);

amanger.setStreamVolume(AudioManager.STREAM_MUSIC,
    (int)(amanger.getStreamMaxVolume(AudioManager.STREAM_MUSIC)*(75.0/100.0)), 0);

1 个答案:

答案 0 :(得分:2)

您可以使用以下功能禁用系统音量

public static void disableSound(Context context)
 {
     AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
     audioManager.setStreamVolume(AudioManager.STREAM_SYSTEM, 0, 0);
 }

如果您想再次启用它,只需更改参数

即可
audioManager.setStreamVolume(AudioManager.STREAM_SYSTEM, 10, 0);

体积范围为0-10