public abstract class android.media.MediaController2$ControllerCallback
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: android.media.MediaController2$ControllerCallback
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaController2$ControllerCallback this
         0: .line 75
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaController2$ControllerCallback;

  public void onConnected(android.media.MediaController2, android.media.SessionCommandGroup2);
    descriptor: (Landroid/media/MediaController2;Landroid/media/SessionCommandGroup2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // android.media.SessionCommandGroup2 allowedCommands
         0: .line 84
            return
        end local 2 // android.media.SessionCommandGroup2 allowedCommands
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0             this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1       controller  Landroid/media/MediaController2;
            0    1     2  allowedCommands  Landroid/media/SessionCommandGroup2;
    MethodParameters:
                 Name  Flags
      controller       
      allowedCommands  

  public void onDisconnected(android.media.MediaController2);
    descriptor: (Landroid/media/MediaController2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
         0: .line 97
            return
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
    MethodParameters:
            Name  Flags
      controller  

  public void onCustomLayoutChanged(android.media.MediaController2, java.util.List<android.media.MediaSession2$CommandButton>);
    descriptor: (Landroid/media/MediaController2;Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // java.util.List layout
         0: .line 110
            return
        end local 2 // java.util.List layout
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
            0    1     2      layout  Ljava/util/List<Landroid/media/MediaSession2$CommandButton;>;
    Signature: (Landroid/media/MediaController2;Ljava/util/List<Landroid/media/MediaSession2$CommandButton;>;)V
    MethodParameters:
            Name  Flags
      controller  
      layout      

  public void onPlaybackInfoChanged(android.media.MediaController2, android.media.MediaController2$PlaybackInfo);
    descriptor: (Landroid/media/MediaController2;Landroid/media/MediaController2$PlaybackInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // android.media.MediaController2$PlaybackInfo info
         0: .line 119
            return
        end local 2 // android.media.MediaController2$PlaybackInfo info
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
            0    1     2        info  Landroid/media/MediaController2$PlaybackInfo;
    MethodParameters:
            Name  Flags
      controller  
      info        

  public void onAllowedCommandsChanged(android.media.MediaController2, android.media.SessionCommandGroup2);
    descriptor: (Landroid/media/MediaController2;Landroid/media/SessionCommandGroup2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // android.media.SessionCommandGroup2 commands
         0: .line 128
            return
        end local 2 // android.media.SessionCommandGroup2 commands
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
            0    1     2    commands  Landroid/media/SessionCommandGroup2;
    MethodParameters:
            Name  Flags
      controller  
      commands    

  public void onCustomCommand(android.media.MediaController2, android.media.SessionCommand2, android.os.Bundle, android.os.ResultReceiver);
    descriptor: (Landroid/media/MediaController2;Landroid/media/SessionCommand2;Landroid/os/Bundle;Landroid/os/ResultReceiver;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=5, args_size=5
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // android.media.SessionCommand2 command
        start local 3 // android.os.Bundle args
        start local 4 // android.os.ResultReceiver receiver
         0: .line 140
            return
        end local 4 // android.os.ResultReceiver receiver
        end local 3 // android.os.Bundle args
        end local 2 // android.media.SessionCommand2 command
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
            0    1     2     command  Landroid/media/SessionCommand2;
            0    1     3        args  Landroid/os/Bundle;
            0    1     4    receiver  Landroid/os/ResultReceiver;
    MethodParameters:
            Name  Flags
      controller  
      command     
      args        
      receiver    

  public void onPlayerStateChanged(android.media.MediaController2, int);
    descriptor: (Landroid/media/MediaController2;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // int state
         0: .line 148
            return
        end local 2 // int state
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
            0    1     2       state  I
    MethodParameters:
            Name  Flags
      controller  
      state       

  public void onPlaybackSpeedChanged(android.media.MediaController2, float);
    descriptor: (Landroid/media/MediaController2;F)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // float speed
         0: .line 157
            return
        end local 2 // float speed
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
            0    1     2       speed  F
    MethodParameters:
            Name  Flags
      controller  
      speed       

  public void onBufferingStateChanged(android.media.MediaController2, android.media.MediaItem2, int);
    descriptor: (Landroid/media/MediaController2;Landroid/media/MediaItem2;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=4, args_size=4
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // android.media.MediaItem2 item
        start local 3 // int state
         0: .line 169
            return
        end local 3 // int state
        end local 2 // android.media.MediaItem2 item
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
            0    1     2        item  Landroid/media/MediaItem2;
            0    1     3       state  I
    MethodParameters:
            Name  Flags
      controller  
      item        
      state       

  public void onSeekCompleted(android.media.MediaController2, long);
    descriptor: (Landroid/media/MediaController2;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=4, args_size=3
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // long position
         0: .line 177
            return
        end local 2 // long position
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
            0    1     2    position  J
    MethodParameters:
            Name  Flags
      controller  
      position    

  public void onError(android.media.MediaController2, int, android.os.Bundle);
    descriptor: (Landroid/media/MediaController2;ILandroid/os/Bundle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=4, args_size=4
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // int errorCode
        start local 3 // android.os.Bundle extras
         0: .line 187
            return
        end local 3 // android.os.Bundle extras
        end local 2 // int errorCode
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
            0    1     2   errorCode  I
            0    1     3      extras  Landroid/os/Bundle;
    MethodParameters:
            Name  Flags
      controller  
      errorCode   
      extras      

  public void onCurrentMediaItemChanged(android.media.MediaController2, android.media.MediaItem2);
    descriptor: (Landroid/media/MediaController2;Landroid/media/MediaItem2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // android.media.MediaItem2 item
         0: .line 201
            return
        end local 2 // android.media.MediaItem2 item
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
            0    1     2        item  Landroid/media/MediaItem2;
    MethodParameters:
            Name  Flags
      controller  
      item        

  public void onPlaylistChanged(android.media.MediaController2, java.util.List<android.media.MediaItem2>, android.media.MediaMetadata2);
    descriptor: (Landroid/media/MediaController2;Ljava/util/List;Landroid/media/MediaMetadata2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=4, args_size=4
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // java.util.List list
        start local 3 // android.media.MediaMetadata2 metadata
         0: .line 211
            return
        end local 3 // android.media.MediaMetadata2 metadata
        end local 2 // java.util.List list
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
            0    1     2        list  Ljava/util/List<Landroid/media/MediaItem2;>;
            0    1     3    metadata  Landroid/media/MediaMetadata2;
    Signature: (Landroid/media/MediaController2;Ljava/util/List<Landroid/media/MediaItem2;>;Landroid/media/MediaMetadata2;)V
    MethodParameters:
            Name  Flags
      controller  
      list        
      metadata    

  public void onPlaylistMetadataChanged(android.media.MediaController2, android.media.MediaMetadata2);
    descriptor: (Landroid/media/MediaController2;Landroid/media/MediaMetadata2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // android.media.MediaMetadata2 metadata
         0: .line 220
            return
        end local 2 // android.media.MediaMetadata2 metadata
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
            0    1     2    metadata  Landroid/media/MediaMetadata2;
    MethodParameters:
            Name  Flags
      controller  
      metadata    

  public void onShuffleModeChanged(android.media.MediaController2, int);
    descriptor: (Landroid/media/MediaController2;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // int shuffleMode
         0: .line 232
            return
        end local 2 // int shuffleMode
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1   controller  Landroid/media/MediaController2;
            0    1     2  shuffleMode  I
    MethodParameters:
             Name  Flags
      controller   
      shuffleMode  

  public void onRepeatModeChanged(android.media.MediaController2, int);
    descriptor: (Landroid/media/MediaController2;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // android.media.MediaController2$ControllerCallback this
        start local 1 // android.media.MediaController2 controller
        start local 2 // int repeatMode
         0: .line 245
            return
        end local 2 // int repeatMode
        end local 1 // android.media.MediaController2 controller
        end local 0 // android.media.MediaController2$ControllerCallback this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Landroid/media/MediaController2$ControllerCallback;
            0    1     1  controller  Landroid/media/MediaController2;
            0    1     2  repeatMode  I
    MethodParameters:
            Name  Flags
      controller  
      repeatMode  
}
SourceFile: "MediaController2.java"
NestHost: android.media.MediaController2
InnerClasses:
  public abstract ControllerCallback = android.media.MediaController2$ControllerCallback of android.media.MediaController2
  public final PlaybackInfo = android.media.MediaController2$PlaybackInfo of android.media.MediaController2
  public final CommandButton = android.media.MediaSession2$CommandButton of android.media.MediaSession2