在Android中,Stream的类型有以下11种:
public static final int STREAM_VOICE_CALL = 0;
public static final int STREAM_SYSTEM = 1;
public static final int STREAM_RING = 2;
public static final int STREAM_MUSIC = 3;
public static final int STREAM_ALARM = 4;
public static final int STREAM_NOTIFICATION = 5;
public static final int STREAM_BLUETOOTH_SCO = 6;
public static final int STREAM_SYSTEM_ENFORCED = 7;
public static final int STREAM_DTMF = 8;
public static final int STREAM_TTS = 9;
public static final int STREAM_ACCESSIBILITY = 10;
每一种StreamType的Volume是可以单独控制的,但实际上,有的StreamType的Volume会遵从另一个StreamType的Volume。在AudioService中,用一个静态数组来表示这种关系,并且Phone(手机)的是这样的。
private final int[] STREAM_VOLUME_ALIAS_VOICE = new int[] {
AudioSystem.STREAM_VOICE_CALL, // STREAM_VOICE_CALL
AudioSystem.STREAM_RING,