gpt4 book ai didi

android - 如何在 Android 中抑制 "Loud music may harm your hearing..."警告

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:47:11 25 4
gpt4 key购买 nike

我有一个适用于三星平板电脑的 Android 应用程序,它使用从平板电脑耳机插孔获取电源的外部设备。当外部设备打开时(通过编程方式最大化音量),Android 会短暂地显示一个警告弹出窗口说:“如果你听太久,大声的音乐可能会伤害你的听力......”我希望这个消息不要显示出来。

这是有问题的代码行:

mAudioMgr.setStreamVolume(AudioManager.STREAM_MUSIC, mAudioMgr.getStreamMaxVolume(AudioManager.STREAM_MUSIC), 0);

不能只中途打开它。事实上,我已经看到平板电脑显示警告(手动更改音量时),即使音量设置低于最大设置。

是的,我录制了原始音量,并在我们用完外部设备后恢复它。

感谢您的任何建议。

最佳答案

由于您无法禁用系统消息,并且当用户手动降低音量时您也会遇到问题,我建议您进行一系列控制以帮助解决这个问题。最大音量:

public void maxVolume() {
AudioManager audioManager = (AudioManager)context.getSystemService(this.AUDIO_SERVICE);
while ( audioManager.getStreamVolume(AudioManager.STREAM_MUSIC) < audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC)) {
audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE, 0);
}
}

防止用户手动更改音量:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_VOLUME_DOWN)
|| (keyCode == KeyEvent.KEYCODE_VOLUME_UP)
|| (keyCode == KeyEvent.KEYCODE_VOLUME_MUTE)) {
return true;
}
return super.onKeyDown(keyCode, event);
}

您可以在 onCreate 方法中调用 maxVolume(),稍后在您开始使用插孔输出过程之前调用它,以确保系统没有改变您的音量。或者,您可以注册一个监听器来监听音量变化,将 maxVolume() 设置为静态并从监听器中调用它。希望对您有所帮助!

关于android - 如何在 Android 中抑制 "Loud music may harm your hearing..."警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14901537/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com