What does the flag parameter mean and what is range of possible min and max of droid device

前端 未结 1 987
北荒
北荒 2021-01-05 05:25
  1. I want to know what is flag(or what are the possible values for flag) in

    audiomanager.setStreamVolume (int streamType, int index, int flags);

1条回答
  •  暖寄归人
    2021-01-05 06:13

    About the flag parameter: There are some flags defined in AudioManager.java. You can use any one of them to get the desired affect. example :

    audioManager.setStreamVolume(audioManager.STREAM_MUSIC,progress,AudioManager.FLAG_SHOW_UI);
    

    or simply

    audioManager.setStreamVolume(audioManager.STREAM_MUSIC,progress,1);
    

    here is the code segment from AudioManager.java showing how they are defined.

    public static final int FLAG_SHOW_UI = 1 << 0;
    
    /**
     * Whether to include ringer modes as possible options when changing volume.
     * For example, if true and volume level is 0 and the volume is adjusted
     * with {@link #ADJUST_LOWER}, then the ringer mode may switch the silent or
     * vibrate mode.
     * 

    * By default this is on for the ring stream. If this flag is included, * this behavior will be present regardless of the stream type being * affected by the ringer mode. * * @see #adjustVolume(int, int) * @see #adjustStreamVolume(int, int, int) */ public static final int FLAG_ALLOW_RINGER_MODES = 1 << 1; /** * Whether to play a sound when changing the volume. *

    * If this is given to {@link #adjustVolume(int, int)} or * {@link #adjustSuggestedStreamVolume(int, int, int)}, it may be ignored * in some cases (for example, the decided stream type is not * {@link AudioManager#STREAM_RING}, or the volume is being adjusted * downward). * * @see #adjustStreamVolume(int, int, int) * @see #adjustVolume(int, int) * @see #setStreamVolume(int, int, int) */ public static final int FLAG_PLAY_SOUND = 1 << 2; /** * Removes any sounds/vibrate that may be in the queue, or are playing (related to * changing volume). */ public static final int FLAG_REMOVE_SOUND_AND_VIBRATE = 1 << 3; /** * Whether to vibrate if going into the vibrate ringer mode. */ public static final int FLAG_VIBRATE = 1 << 4; /** * Indicates to VolumePanel that the volume slider should be disabled as user * cannot change the stream volume * @hide */ public static final int FLAG_FIXED_VOLUME = 1 << 5; /** * Indicates the volume set/adjust call is for Bluetooth absolute volume * @hide */ public static final int FLAG_BLUETOOTH_ABS_VOLUME = 1 << 6; /** * Adjusting the volume was prevented due to silent mode, display a hint in the UI. * @hide */ public static final int FLAG_SHOW_SILENT_HINT = 1 << 7; /** * Indicates the volume call is for Hdmi Cec system audio volume * @hide */ public static final int FLAG_HDMI_SYSTEM_AUDIO_VOLUME = 1 << 8; /** * Indicates that this should only be handled if media is actively playing. * @hide */ public static final int FLAG_ACTIVE_MEDIA_ONLY = 1 << 9; /** * Like FLAG_SHOW_UI, but only dialog warnings and confirmations, no sliders. * @hide */ public static final int FLAG_SHOW_UI_WARNINGS = 1 << 10; /** * Adjusting the volume down from vibrated was prevented, display a hint in the UI. * @hide */ public static final int FLAG_SHOW_VIBRATE_HINT = 1 << 11; /** * Adjusting the volume due to a hardware key press. * @hide */ public static final int FLAG_FROM_KEY = 1 << 12;

    0 讨论(0)
提交回复
热议问题