没有标志的 AudioManager setStreamVolume
AudioManager setStreamVolume without flags
AndroidAudioManager有方法
public void setStreamVolume (int streamType, int index, int flags)
.
我不想使用任何标志,因为它们都用于启用反馈。我不想要振动或 UI 弹出窗口,或任何形式的提示。我不想取消当前正在播放的铃声。我只想设置流音量,我该怎么做?
如果我在播放铃声时更改音量,铃声的音量会受到影响还是只会影响以后的铃声?
这是我能找到的最接近主题的 post,但它没有回答问题:What do the the flag parameter means and range of possible min and max of droid device
要不设置任何标志,请将整数 0
传递到标志参数中。
Kotlin 示例:
val am = getSystemService(Context.AUDIO_SERVICE) as AudioManager
am.setStreamVolume(AudioManager.STREAM_NOTIFICATION, volume, 0)
可能的标志包括 (source):
FLAG_SHOW_UI = 1 << 0;
FLAG_ALLOW_RINGER_MODES = 1 << 1;
FLAG_PLAY_SOUND = 1 << 2;
FLAG_REMOVE_SOUND_AND_VIBRATE = 1 << 3;
FLAG_VIBRATE = 1 << 4;
FLAG_FIXED_VOLUME = 1 << 5;
FLAG_BLUETOOTH_ABS_VOLUME = 1 << 6;
FLAG_SHOW_SILENT_HINT = 1 << 7;
FLAG_HDMI_SYSTEM_AUDIO_VOLUME = 1 << 8;
FLAG_ACTIVE_MEDIA_ONLY = 1 << 9;
FLAG_SHOW_UI_WARNINGS = 1 << 10;
FLAG_SHOW_VIBRATE_HINT = 1 << 11;
FLAG_FROM_KEY = 1 << 12;
此模式表明整数中的每一位代表一个不同的标志。这(通过测试确认)意味着将 0
作为 flags
参数传递给 setStreamVolume
表示没有设置任何标志。
AndroidAudioManager有方法
public void setStreamVolume (int streamType, int index, int flags)
.
我不想使用任何标志,因为它们都用于启用反馈。我不想要振动或 UI 弹出窗口,或任何形式的提示。我不想取消当前正在播放的铃声。我只想设置流音量,我该怎么做?
如果我在播放铃声时更改音量,铃声的音量会受到影响还是只会影响以后的铃声?
这是我能找到的最接近主题的 post,但它没有回答问题:What do the the flag parameter means and range of possible min and max of droid device
要不设置任何标志,请将整数 0
传递到标志参数中。
Kotlin 示例:
val am = getSystemService(Context.AUDIO_SERVICE) as AudioManager
am.setStreamVolume(AudioManager.STREAM_NOTIFICATION, volume, 0)
可能的标志包括 (source):
FLAG_SHOW_UI = 1 << 0;
FLAG_ALLOW_RINGER_MODES = 1 << 1;
FLAG_PLAY_SOUND = 1 << 2;
FLAG_REMOVE_SOUND_AND_VIBRATE = 1 << 3;
FLAG_VIBRATE = 1 << 4;
FLAG_FIXED_VOLUME = 1 << 5;
FLAG_BLUETOOTH_ABS_VOLUME = 1 << 6;
FLAG_SHOW_SILENT_HINT = 1 << 7;
FLAG_HDMI_SYSTEM_AUDIO_VOLUME = 1 << 8;
FLAG_ACTIVE_MEDIA_ONLY = 1 << 9;
FLAG_SHOW_UI_WARNINGS = 1 << 10;
FLAG_SHOW_VIBRATE_HINT = 1 << 11;
FLAG_FROM_KEY = 1 << 12;
此模式表明整数中的每一位代表一个不同的标志。这(通过测试确认)意味着将 0
作为 flags
参数传递给 setStreamVolume
表示没有设置任何标志。