class android.media.MediaActionSound$1 implements android.media.SoundPool$OnLoadCompleteListener
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: android.media.MediaActionSound$1
  super_class: java.lang.Object
{
  final android.media.MediaActionSound this$0;
    descriptor: Landroid/media/MediaActionSound;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(android.media.MediaActionSound);
    descriptor: (Landroid/media/MediaActionSound;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.media.MediaActionSound$1 this
         0: .line 243
            aload 0 /* this */
            aload 1
            putfield android.media.MediaActionSound$1.this$0:Landroid/media/MediaActionSound;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // android.media.MediaActionSound$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaActionSound$1;
    MethodParameters:
        Name  Flags
      this$0  final

  public void onLoadComplete(android.media.SoundPool, int, int);
    descriptor: (Landroid/media/SoundPool;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=10, args_size=4
        start local 0 // android.media.MediaActionSound$1 this
        start local 1 // android.media.SoundPool soundPool
        start local 2 // int sampleId
        start local 3 // int status
         0: .line 246
            aload 0 /* this */
            getfield android.media.MediaActionSound$1.this$0:Landroid/media/MediaActionSound;
            getfield android.media.MediaActionSound.mSounds:[Landroid/media/MediaActionSound$SoundState;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 31
      StackMap locals: android.media.MediaActionSound$1 android.media.SoundPool int int top int int android.media.MediaActionSound$SoundState[]
      StackMap stack:
         1: aload 7
            iload 5
            aaload
            astore 4 /* sound */
        start local 4 // android.media.MediaActionSound$SoundState sound
         2: .line 247
            aload 4 /* sound */
            getfield android.media.MediaActionSound$SoundState.id:I
            iload 2 /* sampleId */
            if_icmpeq 4
         3: .line 248
            goto 30
         4: .line 250
      StackMap locals: android.media.MediaActionSound$1 android.media.SoundPool int int android.media.MediaActionSound$SoundState int int android.media.MediaActionSound$SoundState[]
      StackMap stack:
            iconst_0
            istore 8 /* playSoundId */
        start local 8 // int playSoundId
         5: .line 251
            aload 4 /* sound */
            dup
            astore 9
            monitorenter
         6: .line 252
            iload 3 /* status */
            ifeq 14
         7: .line 253
            aload 4 /* sound */
            iconst_0
            putfield android.media.MediaActionSound$SoundState.state:I
         8: .line 254
            aload 4 /* sound */
            iconst_0
            putfield android.media.MediaActionSound$SoundState.id:I
         9: .line 255
            ldc "MediaActionSound"
            new java.lang.StringBuilder
            dup
            ldc "OnLoadCompleteListener() error: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* status */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        10: .line 256
            ldc " loading sound: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* sound */
            getfield android.media.MediaActionSound$SoundState.name:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 255
            invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
            pop
        12: .line 257
            aload 9
            monitorexit
        13: return
        14: .line 259
      StackMap locals: int android.media.MediaActionSound$SoundState
      StackMap stack:
            aload 4 /* sound */
            getfield android.media.MediaActionSound$SoundState.state:I
            tableswitch { // 1 - 2
                    1: 15
                    2: 17
              default: 20
          }
        15: .line 261
      StackMap locals:
      StackMap stack:
            aload 4 /* sound */
            iconst_3
            putfield android.media.MediaActionSound$SoundState.state:I
        16: .line 262
            goto 23
        17: .line 264
      StackMap locals:
      StackMap stack:
            aload 4 /* sound */
            getfield android.media.MediaActionSound$SoundState.id:I
            istore 8 /* playSoundId */
        18: .line 265
            aload 4 /* sound */
            iconst_3
            putfield android.media.MediaActionSound$SoundState.state:I
        19: .line 266
            goto 23
        20: .line 268
      StackMap locals:
      StackMap stack:
            ldc "MediaActionSound"
            new java.lang.StringBuilder
            dup
            ldc "OnLoadCompleteListener() called in wrong state: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        21: .line 269
            aload 4 /* sound */
            getfield android.media.MediaActionSound$SoundState.state:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " for sound: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* sound */
            getfield android.media.MediaActionSound$SoundState.name:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        22: .line 268
            invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
            pop
        23: .line 251
      StackMap locals:
      StackMap stack:
            aload 9
            monitorexit
        24: goto 27
      StackMap locals:
      StackMap stack: java.lang.Throwable
        25: aload 9
            monitorexit
        26: athrow
        27: .line 273
      StackMap locals:
      StackMap stack:
            iload 8 /* playSoundId */
            ifeq 32
        28: .line 274
            aload 1 /* soundPool */
            iload 8 /* playSoundId */
            fconst_1
            fconst_1
            iconst_0
            iconst_0
            fconst_1
            invokevirtual android.media.SoundPool.play:(IFFIIF)I
            pop
        29: .line 276
            goto 32
        end local 8 // int playSoundId
        end local 4 // android.media.MediaActionSound$SoundState sound
        30: .line 246
      StackMap locals: android.media.MediaActionSound$1 android.media.SoundPool int int top int int android.media.MediaActionSound$SoundState[]
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
        31: iload 5
            iload 6
            if_icmplt 1
        32: .line 278
      StackMap locals: android.media.MediaActionSound$1 android.media.SoundPool int int
      StackMap stack:
            return
        end local 3 // int status
        end local 2 // int sampleId
        end local 1 // android.media.SoundPool soundPool
        end local 0 // android.media.MediaActionSound$1 this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   33     0         this  Landroid/media/MediaActionSound$1;
            0   33     1    soundPool  Landroid/media/SoundPool;
            0   33     2     sampleId  I
            0   33     3       status  I
            2   30     4        sound  Landroid/media/MediaActionSound$SoundState;
            5   30     8  playSoundId  I
      Exception table:
        from    to  target  type
           6    13      25  any
          14    24      25  any
          25    26      25  any
    MethodParameters:
           Name  Flags
      soundPool  
      sampleId   
      status     
}
SourceFile: "MediaActionSound.java"
EnclosingMethod: android.media.MediaActionSound
NestHost: android.media.MediaActionSound
InnerClasses:
  android.media.MediaActionSound$1
  private SoundState = android.media.MediaActionSound$SoundState of android.media.MediaActionSound
  public abstract OnLoadCompleteListener = android.media.SoundPool$OnLoadCompleteListener of android.media.SoundPool