public class android.media.audiopolicy.AudioPolicy
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: android.media.audiopolicy.AudioPolicy
super_class: java.lang.Object
{
private static final java.lang.String TAG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "AudioPolicy"
private static final boolean DEBUG;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private final java.lang.Object mLock;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public static final int POLICY_STATUS_UNREGISTERED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
RuntimeVisibleAnnotations:
android.annotation.SystemApi()
public static final int POLICY_STATUS_REGISTERED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
RuntimeVisibleAnnotations:
android.annotation.SystemApi()
private int mStatus;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.lang.String mRegistrationId;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private android.media.audiopolicy.AudioPolicy$AudioPolicyStatusListener mStatusListener;
descriptor: Landroid/media/audiopolicy/AudioPolicy$AudioPolicyStatusListener;
flags: (0x0002) ACC_PRIVATE
private boolean mIsFocusPolicy;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public static final int FOCUS_POLICY_DUCKING_IN_APP;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
RuntimeVisibleAnnotations:
android.annotation.SystemApi()
public static final int FOCUS_POLICY_DUCKING_DEFAULT;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int FOCUS_POLICY_DUCKING_IN_POLICY;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
RuntimeVisibleAnnotations:
android.annotation.SystemApi()
private android.media.audiopolicy.AudioPolicy$AudioPolicyFocusListener mFocusListener;
descriptor: Landroid/media/audiopolicy/AudioPolicy$AudioPolicyFocusListener;
flags: (0x0002) ACC_PRIVATE
private final android.media.audiopolicy.AudioPolicy$AudioPolicyVolumeCallback mVolCb;
descriptor: Landroid/media/audiopolicy/AudioPolicy$AudioPolicyVolumeCallback;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private android.content.Context mContext;
descriptor: Landroid/content/Context;
flags: (0x0002) ACC_PRIVATE
private android.media.audiopolicy.AudioPolicyConfig mConfig;
descriptor: Landroid/media/audiopolicy/AudioPolicyConfig;
flags: (0x0002) ACC_PRIVATE
private final android.media.audiopolicy.IAudioPolicyCallback mPolicyCb;
descriptor: Landroid/media/audiopolicy/IAudioPolicyCallback;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final android.media.audiopolicy.AudioPolicy$EventHandler mEventHandler;
descriptor: Landroid/media/audiopolicy/AudioPolicy$EventHandler;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static final int MSG_POLICY_STATUS_CHANGE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int MSG_FOCUS_GRANT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int MSG_FOCUS_LOSS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int MSG_MIX_STATE_UPDATE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static final int MSG_FOCUS_REQUEST;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final int MSG_FOCUS_ABANDON;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5
private static final int MSG_VOL_ADJUST;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 6
private static android.media.IAudioService sService;
descriptor: Landroid/media/IAudioService;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
public android.media.audiopolicy.AudioPolicyConfig getConfig();
descriptor: ()Landroid/media/audiopolicy/AudioPolicyConfig;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.media.audiopolicy.AudioPolicy.mConfig:Landroid/media/audiopolicy/AudioPolicyConfig;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/media/audiopolicy/AudioPolicy;
public boolean hasFocusListener();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.media.audiopolicy.AudioPolicy.mFocusListener:Landroid/media/audiopolicy/AudioPolicy$AudioPolicyFocusListener;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/media/audiopolicy/AudioPolicy;
public boolean isFocusPolicy();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.media.audiopolicy.AudioPolicy.mIsFocusPolicy:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/media/audiopolicy/AudioPolicy;
public boolean isVolumeController();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.media.audiopolicy.AudioPolicy.mVolCb:Landroid/media/audiopolicy/AudioPolicy$AudioPolicyVolumeCallback;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/media/audiopolicy/AudioPolicy;
private void <init>(android.media.audiopolicy.AudioPolicyConfig, android.content.Context, android.os.Looper, android.media.audiopolicy.AudioPolicy$AudioPolicyFocusListener, android.media.audiopolicy.AudioPolicy$AudioPolicyStatusListener, boolean, android.media.audiopolicy.AudioPolicy$AudioPolicyVolumeCallback);
descriptor: (Landroid/media/audiopolicy/AudioPolicyConfig;Landroid/content/Context;Landroid/os/Looper;Landroid/media/audiopolicy/AudioPolicy$AudioPolicyFocusListener;Landroid/media/audiopolicy/AudioPolicy$AudioPolicyStatusListener;ZLandroid/media/audiopolicy/AudioPolicy$AudioPolicyVolumeCallback;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield android.media.audiopolicy.AudioPolicy.mLock:Ljava/lang/Object;
2: aload 0
new android.media.audiopolicy.AudioPolicy$1
dup
aload 0
invokespecial android.media.audiopolicy.AudioPolicy$1.<init>:(Landroid/media/audiopolicy/AudioPolicy;)V
putfield android.media.audiopolicy.AudioPolicy.mPolicyCb:Landroid/media/audiopolicy/IAudioPolicyCallback;
3: aload 0
aload 1
putfield android.media.audiopolicy.AudioPolicy.mConfig:Landroid/media/audiopolicy/AudioPolicyConfig;
4: aload 0
iconst_1
putfield android.media.audiopolicy.AudioPolicy.mStatus:I
5: aload 0
aload 2
putfield android.media.audiopolicy.AudioPolicy.mContext:Landroid/content/Context;
6: aload 3
ifnonnull 8
7: invokestatic android.os.Looper.getMainLooper:()Landroid/os/Looper;
astore 3
8: StackMap locals: android.media.audiopolicy.AudioPolicy android.media.audiopolicy.AudioPolicyConfig android.content.Context android.os.Looper android.media.audiopolicy.AudioPolicy$AudioPolicyFocusListener android.media.audiopolicy.AudioPolicy$AudioPolicyStatusListener int android.media.audiopolicy.AudioPolicy$AudioPolicyVolumeCallback
StackMap stack:
aload 3
ifnull 11
9: aload 0
new android.media.audiopolicy.AudioPolicy$EventHandler
dup
aload 0
aload 0
aload 3
invokespecial android.media.audiopolicy.AudioPolicy$EventHandler.<init>:(Landroid/media/audiopolicy/AudioPolicy;Landroid/media/audiopolicy/AudioPolicy;Landroid/os/Looper;)V
putfield android.media.audiopolicy.AudioPolicy.mEventHandler:Landroid/media/audiopolicy/AudioPolicy$EventHandler;
10: goto 13
11: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield android.media.audiopolicy.AudioPolicy.mEventHandler:Landroid/media/audiopolicy/AudioPolicy$EventHandler;
12: ldc "AudioPolicy"
ldc "No event handler due to looper without a thread"
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
13: StackMap locals:
StackMap stack:
aload 0
aload 4
putfield android.media.audiopolicy.AudioPolicy.mFocusListener:Landroid/media/audiopolicy/AudioPolicy$AudioPolicyFocusListener;
14: aload 0
aload 5
putfield android.media.audiopolicy.AudioPolicy.mStatusListener:Landroid/media/audiopolicy/AudioPolicy$AudioPolicyStatusListener;
15: aload 0
iload 6
putfield android.media.audiopolicy.AudioPolicy.mIsFocusPolicy:Z
16: aload 0
aload 7
putfield android.media.audiopolicy.AudioPolicy.mVolCb:Landroid/media/audiopolicy/AudioPolicy$AudioPolicyVolumeCallback;
17: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Landroid/media/audiopolicy/AudioPolicy;
0 18 1 config Landroid/media/audiopolicy/AudioPolicyConfig;
0 18 2 context Landroid/content/Context;
0 18 3 looper Landroid/os/Looper;
0 18 4 fl Landroid/media/audiopolicy/AudioPolicy$AudioPolicyFocusListener;
0 18 5 sl Landroid/media/audiopolicy/AudioPolicy$AudioPolicyStatusListener;
0 18 6 isFocusPolicy Z
0 18 7 vc Landroid/media/audiopolicy/AudioPolicy$AudioPolicyVolumeCallback;
MethodParameters:
Name Flags
config
context
looper
fl
sl
isFocusPolicy
vc
public int attachMixes(java.util.List<android.media.audiopolicy.AudioMix>);
descriptor: (Ljava/util/List;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Illegal null list of AudioMix"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield android.media.audiopolicy.AudioPolicy.mLock:Ljava/lang/Object;
dup
astore 2
monitorenter
3: aload 0
getfield android.media.audiopolicy.AudioPolicy.mStatus:I
iconst_2
if_icmpeq 5
4: new java.lang.IllegalStateException
dup
ldc "Cannot alter unregistered AudioPolicy"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: java.lang.Object
StackMap stack:
new java.util.ArrayList
dup
aload 1
invokeinterface java.util.List.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 3
start local 3 6: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 11
StackMap locals: android.media.audiopolicy.AudioPolicy java.util.List java.lang.Object java.util.ArrayList top java.util.Iterator
StackMap stack:
7: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast android.media.audiopolicy.AudioMix
astore 4
start local 4 8: aload 4
ifnonnull 10
9: new java.lang.IllegalArgumentException
dup
ldc "Illegal null AudioMix in attachMixes"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
10: StackMap locals: android.media.audiopolicy.AudioPolicy java.util.List java.lang.Object java.util.ArrayList android.media.audiopolicy.AudioMix java.util.Iterator
StackMap stack:
aload 3
aload 4
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 4 11: StackMap locals: android.media.audiopolicy.AudioPolicy java.util.List java.lang.Object java.util.ArrayList top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
12: new android.media.audiopolicy.AudioPolicyConfig
dup
aload 3
invokespecial android.media.audiopolicy.AudioPolicyConfig.<init>:(Ljava/util/ArrayList;)V
astore 4
start local 4 13: invokestatic android.media.audiopolicy.AudioPolicy.getService:()Landroid/media/IAudioService;
astore 5
start local 5 14: aload 5
aload 4
aload 0
invokevirtual android.media.audiopolicy.AudioPolicy.cb:()Landroid/media/audiopolicy/IAudioPolicyCallback;
invokeinterface android.media.IAudioService.addMixForPolicy:(Landroid/media/audiopolicy/AudioPolicyConfig;Landroid/media/audiopolicy/IAudioPolicyCallback;)I
istore 6
start local 6 15: iload 6
ifne 17
16: aload 0
getfield android.media.audiopolicy.AudioPolicy.mConfig:Landroid/media/audiopolicy/AudioPolicyConfig;
aload 3
invokevirtual android.media.audiopolicy.AudioPolicyConfig.add:(Ljava/util/ArrayList;)V
17: StackMap locals: android.media.audiopolicy.AudioPolicy java.util.List java.lang.Object java.util.ArrayList android.media.audiopolicy.AudioPolicyConfig android.media.IAudioService int
StackMap stack:
iload 6
18: aload 2
monitorexit
19: ireturn
end local 6 20: StackMap locals: android.media.audiopolicy.AudioPolicy java.util.List java.lang.Object java.util.ArrayList android.media.audiopolicy.AudioPolicyConfig android.media.IAudioService
StackMap stack: android.os.RemoteException
astore 6
start local 6 21: ldc "AudioPolicy"
ldc "Dead object in attachMixes"
aload 6
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
22: aload 2
monitorexit
23: iconst_m1
ireturn
end local 6 end local 5 end local 4 end local 3 24: StackMap locals: android.media.audiopolicy.AudioPolicy java.util.List java.lang.Object
StackMap stack: java.lang.Throwable
aload 2
monitorexit
25: athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Landroid/media/audiopolicy/AudioPolicy;
0 26 1 mixes Ljava/util/List<Landroid/media/audiopolicy/AudioMix;>;
6 24 3 zeMixes Ljava/util/ArrayList<Landroid/media/audiopolicy/AudioMix;>;
8 11 4 mix Landroid/media/audiopolicy/AudioMix;
13 24 4 cfg Landroid/media/audiopolicy/AudioPolicyConfig;
14 24 5 service Landroid/media/IAudioService;
15 20 6 status I
21 24 6 e Landroid/os/RemoteException;
Exception table:
from to target type
14 18 20 Class android.os.RemoteException
3 19 24 any
20 23 24 any
24 25 24 any
Signature: (Ljava/util/List<Landroid/media/audiopolicy/AudioMix;>;)I
RuntimeVisibleAnnotations:
android.annotation.SystemApi()
MethodParameters:
Name Flags
mixes
public int detachMixes(java.util.List<android.media.audiopolicy.AudioMix>);
descriptor: (Ljava/util/List;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Illegal null list of AudioMix"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield android.media.audiopolicy.AudioPolicy.mLock:Ljava/lang/Object;
dup
astore 2
monitorenter
3: aload 0
getfield android.media.audiopolicy.AudioPolicy.mStatus:I
iconst_2
if_icmpeq 5
4: new java.lang.IllegalStateException
dup
ldc "Cannot alter unregistered AudioPolicy"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: java.lang.Object
StackMap stack:
new java.util.ArrayList
dup
aload 1
invokeinterface java.util.List.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 3
start local 3 6: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 11
StackMap locals: android.media.audiopolicy.AudioPolicy java.util.List java.lang.Object java.util.ArrayList top java.util.Iterator
StackMap stack:
7: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast android.media.audiopolicy.AudioMix
astore 4
start local 4 8: aload 4
ifnonnull 10
9: new java.lang.IllegalArgumentException
dup
ldc "Illegal null AudioMix in detachMixes"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
10: StackMap locals: android.media.audiopolicy.AudioPolicy java.util.List java.lang.Object java.util.ArrayList android.media.audiopolicy.AudioMix java.util.Iterator
StackMap stack:
aload 3
aload 4
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 4 11: StackMap locals: android.media.audiopolicy.AudioPolicy java.util.List java.lang.Object java.util.ArrayList top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
12: new android.media.audiopolicy.AudioPolicyConfig
dup
aload 3
invokespecial android.media.audiopolicy.AudioPolicyConfig.<init>:(Ljava/util/ArrayList;)V
astore 4
start local 4 13: invokestatic android.media.audiopolicy.AudioPolicy.getService:()Landroid/media/IAudioService;
astore 5
start local 5 14: aload 5
aload 4
aload 0
invokevirtual android.media.audiopolicy.AudioPolicy.cb:()Landroid/media/audiopolicy/IAudioPolicyCallback;
invokeinterface android.media.IAudioService.removeMixForPolicy:(Landroid/media/audiopolicy/AudioPolicyConfig;Landroid/media/audiopolicy/IAudioPolicyCallback;)I
istore 6
start local 6 15: iload 6
ifne 17
16: aload 0
getfield android.media.audiopolicy.AudioPolicy.mConfig:Landroid/media/audiopolicy/AudioPolicyConfig;
aload 3
invokevirtual android.media.audiopolicy.AudioPolicyConfig.remove:(Ljava/util/ArrayList;)V
17: StackMap locals: android.media.audiopolicy.AudioPolicy java.util.List java.lang.Object java.util.ArrayList android.media.audiopolicy.AudioPolicyConfig android.media.IAudioService int
StackMap stack:
iload 6
18: aload 2
monitorexit
19: ireturn
end local 6 20: StackMap locals: android.media.audiopolicy.AudioPolicy java.util.List java.lang.Object java.util.ArrayList android.media.audiopolicy.AudioPolicyConfig android.media.IAudioService
StackMap stack: android.os.RemoteException
astore 6
start local 6 21: ldc "AudioPolicy"
ldc "Dead object in detachMixes"
aload 6
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
22: aload 2
monitorexit
23: iconst_m1
ireturn
end local 6 end local 5 end local 4 end local 3 24: StackMap locals: android.media.audiopolicy.AudioPolicy java.util.List java.lang.Object
StackMap stack: java.lang.Throwable
aload 2
monitorexit
25: athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Landroid/media/audiopolicy/AudioPolicy;
0 26 1 mixes Ljava/util/List<Landroid/media/audiopolicy/AudioMix;>;
6 24 3 zeMixes Ljava/util/ArrayList<Landroid/media/audiopolicy/AudioMix;>;
8 11 4 mix Landroid/media/audiopolicy/AudioMix;
13 24 4 cfg Landroid/media/audiopolicy/AudioPolicyConfig;
14 24 5 service Landroid/media/IAudioService;
15 20 6 status I
21 24 6 e Landroid/os/RemoteException;
Exception table:
from to target type
14 18 20 Class android.os.RemoteException
3 19 24 any
20 23 24 any
24 25 24 any
Signature: (Ljava/util/List<Landroid/media/audiopolicy/AudioMix;>;)I
RuntimeVisibleAnnotations:
android.annotation.SystemApi()
MethodParameters:
Name Flags
mixes
public void setRegistration(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield android.media.audiopolicy.AudioPolicy.mLock:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
aload 1
putfield android.media.audiopolicy.AudioPolicy.mRegistrationId:Ljava/lang/String;
2: aload 0
getfield android.media.audiopolicy.AudioPolicy.mConfig:Landroid/media/audiopolicy/AudioPolicyConfig;
aload 1
invokevirtual android.media.audiopolicy.AudioPolicyConfig.setRegistration:(Ljava/lang/String;)V
3: aload 1
ifnull 6
4: aload 0
iconst_2
putfield android.media.audiopolicy.AudioPolicy.mStatus:I
5: goto 7
6: StackMap locals: java.lang.Object
StackMap stack:
aload 0
iconst_1
putfield android.media.audiopolicy.AudioPolicy.mStatus:I
7: StackMap locals:
StackMap stack:
aload 2
monitorexit
8: goto 11
StackMap locals:
StackMap stack: java.lang.Throwable
9: aload 2
monitorexit
10: athrow
11: StackMap locals:
StackMap stack:
aload 0
iconst_0
invokevirtual android.media.audiopolicy.AudioPolicy.sendMsg:(I)V
12: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Landroid/media/audiopolicy/AudioPolicy;
0 13 1 regId Ljava/lang/String;
Exception table:
from to target type
1 8 9 any
9 10 9 any
MethodParameters:
Name Flags
regId
private boolean policyReadyToUse();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tandroid.Manifest.permission.MODIFY_AUDIO_ROUTING cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/media/audiopolicy/AudioPolicy;
private void checkMixReadyToUse(android.media.audiopolicy.AudioMix, boolean);
descriptor: (Landroid/media/audiopolicy/AudioMix;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 5
1: iload 2
ifeq 2
ldc "Invalid null AudioMix for AudioTrack creation"
goto 3
2: StackMap locals:
StackMap stack:
ldc "Invalid null AudioMix for AudioRecord creation"
3: StackMap locals:
StackMap stack: java.lang.String
astore 3
start local 3 4: new java.lang.IllegalArgumentException
dup
aload 3
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 3 5: StackMap locals:
StackMap stack:
aload 0
getfield android.media.audiopolicy.AudioPolicy.mConfig:Landroid/media/audiopolicy/AudioPolicyConfig;
getfield android.media.audiopolicy.AudioPolicyConfig.mMixes:Ljava/util/ArrayList;
aload 1
invokevirtual java.util.ArrayList.contains:(Ljava/lang/Object;)Z
ifne 7
6: new java.lang.IllegalArgumentException
dup
ldc "Invalid mix: not part of this policy"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 1
invokevirtual android.media.audiopolicy.AudioMix.getRouteFlags:()I
iconst_2
iand
iconst_2
if_icmpeq 9
8: new java.lang.IllegalArgumentException
dup
ldc "Invalid AudioMix: not defined for loop back"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
iload 2
ifeq 13
aload 1
invokevirtual android.media.audiopolicy.AudioMix.getMixType:()I
iconst_1
if_icmpeq 13
10: new java.lang.IllegalArgumentException
dup
11: ldc "Invalid AudioMix: not defined for being a recording source"
12: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
13: StackMap locals:
StackMap stack:
iload 2
ifne 17
aload 1
invokevirtual android.media.audiopolicy.AudioMix.getMixType:()I
ifeq 17
14: new java.lang.IllegalArgumentException
dup
15: ldc "Invalid AudioMix: not defined for capturing playback"
16: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
17: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Landroid/media/audiopolicy/AudioPolicy;
0 18 1 mix Landroid/media/audiopolicy/AudioMix;
0 18 2 forTrack Z
4 5 3 msg Ljava/lang/String;
Exceptions:
throws java.lang.IllegalArgumentException
MethodParameters:
Name Flags
mix
forTrack
public int getFocusDuckingBehavior();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.media.audiopolicy.AudioPolicy.mConfig:Landroid/media/audiopolicy/AudioPolicyConfig;
getfield android.media.audiopolicy.AudioPolicyConfig.mDuckingPolicy:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/media/audiopolicy/AudioPolicy;
RuntimeVisibleAnnotations:
android.annotation.SystemApi()
public int setFocusDuckingBehavior(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: iload 1
ifeq 3
1: iload 1
iconst_1
if_icmpeq 3
2: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Invalid ducking behavior "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield android.media.audiopolicy.AudioPolicy.mLock:Ljava/lang/Object;
dup
astore 2
monitorenter
4: aload 0
getfield android.media.audiopolicy.AudioPolicy.mStatus:I
iconst_2
if_icmpeq 8
5: new java.lang.IllegalStateException
dup
6: ldc "Cannot change ducking behavior for unregistered policy"
7: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals: java.lang.Object
StackMap stack:
iload 1
iconst_1
if_icmpne 13
9: aload 0
getfield android.media.audiopolicy.AudioPolicy.mFocusListener:Landroid/media/audiopolicy/AudioPolicy$AudioPolicyFocusListener;
ifnonnull 13
10: new java.lang.IllegalStateException
dup
11: ldc "Cannot handle ducking without an audio focus listener"
12: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
13: StackMap locals:
StackMap stack:
invokestatic android.media.audiopolicy.AudioPolicy.getService:()Landroid/media/IAudioService;
astore 3
start local 3 14: aload 3
iload 1
15: aload 0
invokevirtual android.media.audiopolicy.AudioPolicy.cb:()Landroid/media/audiopolicy/IAudioPolicyCallback;
16: invokeinterface android.media.IAudioService.setFocusPropertiesForPolicy:(ILandroid/media/audiopolicy/IAudioPolicyCallback;)I
istore 4
start local 4 17: iload 4
ifne 19
18: aload 0
getfield android.media.audiopolicy.AudioPolicy.mConfig:Landroid/media/audiopolicy/AudioPolicyConfig;
iload 1
putfield android.media.audiopolicy.AudioPolicyConfig.mDuckingPolicy:I
19: StackMap locals: android.media.IAudioService int
StackMap stack:
iload 4
20: aload 2
monitorexit
21: ireturn
end local 4 22: StackMap locals: android.media.audiopolicy.AudioPolicy int java.lang.Object android.media.IAudioService
StackMap stack: android.os.RemoteException
astore 4
start local 4 23: ldc "AudioPolicy"
ldc "Dead object in setFocusPropertiesForPolicy for behavior"
aload 4
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
24: aload 2
monitorexit
25: iconst_m1
ireturn
end local 4 end local 3 26: StackMap locals: android.media.audiopolicy.AudioPolicy int java.lang.Object
StackMap stack: java.lang.Throwable
aload 2
monitorexit
27: athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Landroid/media/audiopolicy/AudioPolicy;
0 28 1 behavior I
14 26 3 service Landroid/media/IAudioService;
17 22 4 status I
23 26 4 e Landroid/os/RemoteException;
Exception table:
from to target type
14 20 22 Class android.os.RemoteException
4 21 26 any
22 25 26 any
26 27 26 any
Exceptions:
throws java.lang.IllegalArgumentException, java.lang.IllegalStateException
RuntimeVisibleAnnotations:
android.annotation.SystemApi()
MethodParameters:
Name Flags
behavior
public android.media.AudioRecord createAudioRecordSink(android.media.audiopolicy.AudioMix);
descriptor: (Landroid/media/audiopolicy/AudioMix;)Landroid/media/AudioRecord;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual android.media.audiopolicy.AudioPolicy.policyReadyToUse:()Z
ifne 3
1: ldc "AudioPolicy"
ldc "Cannot create AudioRecord sink for AudioMix"
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
2: aconst_null
areturn
3: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_0
invokevirtual android.media.audiopolicy.AudioPolicy.checkMixReadyToUse:(Landroid/media/audiopolicy/AudioMix;Z)V
4: new android.media.AudioFormat$Builder
dup
aload 1
invokevirtual android.media.audiopolicy.AudioMix.getFormat:()Landroid/media/AudioFormat;
invokespecial android.media.AudioFormat$Builder.<init>:(Landroid/media/AudioFormat;)V
5: aload 1
invokevirtual android.media.audiopolicy.AudioMix.getFormat:()Landroid/media/AudioFormat;
invokevirtual android.media.AudioFormat.getChannelMask:()I
6: invokestatic android.media.AudioFormat.inChannelMaskFromOutChannelMask:(I)I
invokevirtual android.media.AudioFormat$Builder.setChannelMask:(I)Landroid/media/AudioFormat$Builder;
7: invokevirtual android.media.AudioFormat$Builder.build:()Landroid/media/AudioFormat;
8: astore 2
start local 2 9: new android.media.AudioRecord
dup
10: new android.media.AudioAttributes$Builder
dup
invokespecial android.media.AudioAttributes$Builder.<init>:()V
11: bipush 8
invokevirtual android.media.AudioAttributes$Builder.setInternalCapturePreset:(I)Landroid/media/AudioAttributes$Builder;
12: aload 1
invokestatic android.media.audiopolicy.AudioPolicy.addressForTag:(Landroid/media/audiopolicy/AudioMix;)Ljava/lang/String;
invokevirtual android.media.AudioAttributes$Builder.addTag:(Ljava/lang/String;)Landroid/media/AudioAttributes$Builder;
13: ldc "fixedVolume"
invokevirtual android.media.AudioAttributes$Builder.addTag:(Ljava/lang/String;)Landroid/media/AudioAttributes$Builder;
14: invokevirtual android.media.AudioAttributes$Builder.build:()Landroid/media/AudioAttributes;
15: aload 2
16: aload 1
invokevirtual android.media.audiopolicy.AudioMix.getFormat:()Landroid/media/AudioFormat;
invokevirtual android.media.AudioFormat.getSampleRate:()I
17: bipush 12
aload 1
invokevirtual android.media.audiopolicy.AudioMix.getFormat:()Landroid/media/AudioFormat;
invokevirtual android.media.AudioFormat.getEncoding:()I
18: invokestatic android.media.AudioRecord.getMinBufferSize:(III)I
19: iconst_0
20: invokespecial android.media.AudioRecord.<init>:(Landroid/media/AudioAttributes;Landroid/media/AudioFormat;II)V
astore 3
start local 3 21: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Landroid/media/audiopolicy/AudioPolicy;
0 22 1 mix Landroid/media/audiopolicy/AudioMix;
9 22 2 mixFormat Landroid/media/AudioFormat;
21 22 3 ar Landroid/media/AudioRecord;
Exceptions:
throws java.lang.IllegalArgumentException
RuntimeVisibleAnnotations:
android.annotation.SystemApi()
MethodParameters:
Name Flags
mix
public android.media.AudioTrack createAudioTrackSource(android.media.audiopolicy.AudioMix);
descriptor: (Landroid/media/audiopolicy/AudioMix;)Landroid/media/AudioTrack;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual android.media.audiopolicy.AudioPolicy.policyReadyToUse:()Z
ifne 3
1: ldc "AudioPolicy"
ldc "Cannot create AudioTrack source for AudioMix"
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
2: aconst_null
areturn
3: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_1
invokevirtual android.media.audiopolicy.AudioPolicy.checkMixReadyToUse:(Landroid/media/audiopolicy/AudioMix;Z)V
4: new android.media.AudioTrack
dup
5: new android.media.AudioAttributes$Builder
dup
invokespecial android.media.AudioAttributes$Builder.<init>:()V
6: bipush 15
invokevirtual android.media.AudioAttributes$Builder.setUsage:(I)Landroid/media/AudioAttributes$Builder;
7: aload 1
invokestatic android.media.audiopolicy.AudioPolicy.addressForTag:(Landroid/media/audiopolicy/AudioMix;)Ljava/lang/String;
invokevirtual android.media.AudioAttributes$Builder.addTag:(Ljava/lang/String;)Landroid/media/AudioAttributes$Builder;
8: invokevirtual android.media.AudioAttributes$Builder.build:()Landroid/media/AudioAttributes;
9: aload 1
invokevirtual android.media.audiopolicy.AudioMix.getFormat:()Landroid/media/AudioFormat;
10: aload 1
invokevirtual android.media.audiopolicy.AudioMix.getFormat:()Landroid/media/AudioFormat;
invokevirtual android.media.AudioFormat.getSampleRate:()I
11: aload 1
invokevirtual android.media.audiopolicy.AudioMix.getFormat:()Landroid/media/AudioFormat;
invokevirtual android.media.AudioFormat.getChannelMask:()I
aload 1
invokevirtual android.media.audiopolicy.AudioMix.getFormat:()Landroid/media/AudioFormat;
invokevirtual android.media.AudioFormat.getEncoding:()I
12: invokestatic android.media.AudioTrack.getMinBufferSize:(III)I
13: iconst_1
14: iconst_0
15: invokespecial android.media.AudioTrack.<init>:(Landroid/media/AudioAttributes;Landroid/media/AudioFormat;III)V
astore 2
start local 2 16: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Landroid/media/audiopolicy/AudioPolicy;
0 17 1 mix Landroid/media/audiopolicy/AudioMix;
16 17 2 at Landroid/media/AudioTrack;
Exceptions:
throws java.lang.IllegalArgumentException
RuntimeVisibleAnnotations:
android.annotation.SystemApi()
MethodParameters:
Name Flags
mix
public int getStatus();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.media.audiopolicy.AudioPolicy.mStatus:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/media/audiopolicy/AudioPolicy;
RuntimeVisibleAnnotations:
android.annotation.SystemApi()
private void onPolicyStatusChange();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield android.media.audiopolicy.AudioPolicy.mLock:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
getfield android.media.audiopolicy.AudioPolicy.mStatusListener:Landroid/media/audiopolicy/AudioPolicy$AudioPolicyStatusListener;
ifnonnull 4
2: aload 2
monitorexit
3: return
4: StackMap locals: android.media.audiopolicy.AudioPolicy top java.lang.Object
StackMap stack:
aload 0
getfield android.media.audiopolicy.AudioPolicy.mStatusListener:Landroid/media/audiopolicy/AudioPolicy$AudioPolicyStatusListener;
astore 1
start local 1 5: aload 2
monitorexit
6: goto 9
end local 1 StackMap locals:
StackMap stack: java.lang.Throwable
7: aload 2
monitorexit
8: athrow
start local 1 9: StackMap locals: android.media.audiopolicy.AudioPolicy android.media.audiopolicy.AudioPolicy$AudioPolicyStatusListener
StackMap stack:
aload 1
invokevirtual android.media.audiopolicy.AudioPolicy$AudioPolicyStatusListener.onStatusChange:()V
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Landroid/media/audiopolicy/AudioPolicy;
5 7 1 l Landroid/media/audiopolicy/AudioPolicy$AudioPolicyStatusListener;
9 11 1 l Landroid/media/audiopolicy/AudioPolicy$AudioPolicyStatusListener;
Exception table:
from to target type
1 3 7 any
4 6 7 any
7 8 7 any
public android.media.audiopolicy.IAudioPolicyCallback cb();
descriptor: ()Landroid/media/audiopolicy/IAudioPolicyCallback;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.media.audiopolicy.AudioPolicy.mPolicyCb:Landroid/media/audiopolicy/IAudioPolicyCallback;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/media/audiopolicy/AudioPolicy;
private static java.lang.String addressForTag(android.media.audiopolicy.AudioMix);
descriptor: (Landroid/media/audiopolicy/AudioMix;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "addr="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual android.media.audiopolicy.AudioMix.getRegistration:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 mix Landroid/media/audiopolicy/AudioMix;
MethodParameters:
Name Flags
mix
private void sendMsg(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield android.media.audiopolicy.AudioPolicy.mEventHandler:Landroid/media/audiopolicy/AudioPolicy$EventHandler;
ifnull 2
1: aload 0
getfield android.media.audiopolicy.AudioPolicy.mEventHandler:Landroid/media/audiopolicy/AudioPolicy$EventHandler;
iload 1
invokevirtual android.media.audiopolicy.AudioPolicy$EventHandler.sendEmptyMessage:(I)Z
pop
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/media/audiopolicy/AudioPolicy;
0 3 1 msg I
MethodParameters:
Name Flags
msg
private void sendMsg(int, java.lang.Object, int);
descriptor: (ILjava/lang/Object;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield android.media.audiopolicy.AudioPolicy.mEventHandler:Landroid/media/audiopolicy/AudioPolicy$EventHandler;
ifnull 4
1: aload 0
getfield android.media.audiopolicy.AudioPolicy.mEventHandler:Landroid/media/audiopolicy/AudioPolicy$EventHandler;
2: aload 0
getfield android.media.audiopolicy.AudioPolicy.mEventHandler:Landroid/media/audiopolicy/AudioPolicy$EventHandler;
iload 1
iload 3
iconst_0
aload 2
invokevirtual android.media.audiopolicy.AudioPolicy$EventHandler.obtainMessage:(IIILjava/lang/Object;)Landroid/os/Message;
3: invokevirtual android.media.audiopolicy.AudioPolicy$EventHandler.sendMessage:(Landroid/os/Message;)Z
pop
4: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/media/audiopolicy/AudioPolicy;
0 5 1 msg I
0 5 2 obj Ljava/lang/Object;
0 5 3 i I
MethodParameters:
Name Flags
msg
obj
i
private static android.media.IAudioService getService();
descriptor: ()Landroid/media/IAudioService;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=0
0: getstatic android.media.audiopolicy.AudioPolicy.sService:Landroid/media/IAudioService;
ifnull 2
1: getstatic android.media.audiopolicy.AudioPolicy.sService:Landroid/media/IAudioService;
areturn
2: StackMap locals:
StackMap stack:
ldc "audio"
invokestatic android.os.ServiceManager.getService:(Ljava/lang/String;)Landroid/os/IBinder;
astore 0
start local 0 3: aload 0
invokestatic android.media.IAudioService$Stub.asInterface:(Landroid/os/IBinder;)Landroid/media/IAudioService;
putstatic android.media.audiopolicy.AudioPolicy.sService:Landroid/media/IAudioService;
4: getstatic android.media.audiopolicy.AudioPolicy.sService:Landroid/media/IAudioService;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
3 5 0 b Landroid/os/IBinder;
public java.lang.String toLogFriendlyString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: new java.lang.String
dup
ldc "android.media.audiopolicy.AudioPolicy:\n"
invokespecial java.lang.String.<init>:(Ljava/lang/String;)V
astore 1
start local 1 1: new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "config="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield android.media.audiopolicy.AudioPolicy.mConfig:Landroid/media/audiopolicy/AudioPolicyConfig;
invokevirtual android.media.audiopolicy.AudioPolicyConfig.toLogFriendlyString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/media/audiopolicy/AudioPolicy;
1 3 1 textDump Ljava/lang/String;
}
SourceFile: "AudioPolicy.java"
NestMembers:
android.media.audiopolicy.AudioPolicy$1 android.media.audiopolicy.AudioPolicy$AudioPolicyFocusListener android.media.audiopolicy.AudioPolicy$AudioPolicyStatusListener android.media.audiopolicy.AudioPolicy$AudioPolicyVolumeCallback android.media.audiopolicy.AudioPolicy$Builder android.media.audiopolicy.AudioPolicy$EventHandler android.media.audiopolicy.AudioPolicy$PolicyStatus
InnerClasses:
public Builder = android.media.AudioAttributes$Builder of android.media.AudioAttributes
public Builder = android.media.AudioFormat$Builder of android.media.AudioFormat
public abstract Stub = android.media.IAudioService$Stub of android.media.IAudioService
android.media.audiopolicy.AudioPolicy$1
public abstract AudioPolicyFocusListener = android.media.audiopolicy.AudioPolicy$AudioPolicyFocusListener of android.media.audiopolicy.AudioPolicy
public abstract AudioPolicyStatusListener = android.media.audiopolicy.AudioPolicy$AudioPolicyStatusListener of android.media.audiopolicy.AudioPolicy
public abstract AudioPolicyVolumeCallback = android.media.audiopolicy.AudioPolicy$AudioPolicyVolumeCallback of android.media.audiopolicy.AudioPolicy
public Builder = android.media.audiopolicy.AudioPolicy$Builder of android.media.audiopolicy.AudioPolicy
private EventHandler = android.media.audiopolicy.AudioPolicy$EventHandler of android.media.audiopolicy.AudioPolicy
public abstract PolicyStatus = android.media.audiopolicy.AudioPolicy$PolicyStatus of android.media.audiopolicy.AudioPolicy
RuntimeVisibleAnnotations:
android.annotation.SystemApi()