public final class android.media.MediaSession2$ControllerInfo
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: android.media.MediaSession2$ControllerInfo
  super_class: java.lang.Object
{
  private final android.media.update.MediaSession2Provider$ControllerInfoProvider mProvider;
    descriptor: Landroid/media/update/MediaSession2Provider$ControllerInfoProvider;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(android.content.Context, int, int, java.lang.String, android.os.IInterface);
    descriptor: (Landroid/content/Context;IILjava/lang/String;Landroid/os/IInterface;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=6
        start local 0 // android.media.MediaSession2$ControllerInfo this
        start local 1 // android.content.Context context
        start local 2 // int uid
        start local 3 // int pid
        start local 4 // java.lang.String packageName
        start local 5 // android.os.IInterface callback
         0: .line 707
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 709
            aload 0 /* this */
            invokestatic android.media.update.ApiLoader.getProvider:()Landroid/media/update/StaticProvider;
         2: .line 710
            aload 1 /* context */
            aload 0 /* this */
            iload 2 /* uid */
            iload 3 /* pid */
            aload 4 /* packageName */
            aload 5 /* callback */
         3: .line 709
            invokeinterface android.media.update.StaticProvider.createMediaSession2ControllerInfo:(Landroid/content/Context;Landroid/media/MediaSession2$ControllerInfo;IILjava/lang/String;Landroid/os/IInterface;)Landroid/media/update/MediaSession2Provider$ControllerInfoProvider;
            putfield android.media.MediaSession2$ControllerInfo.mProvider:Landroid/media/update/MediaSession2Provider$ControllerInfoProvider;
         4: .line 711
            return
        end local 5 // android.os.IInterface callback
        end local 4 // java.lang.String packageName
        end local 3 // int pid
        end local 2 // int uid
        end local 1 // android.content.Context context
        end local 0 // android.media.MediaSession2$ControllerInfo this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Landroid/media/MediaSession2$ControllerInfo;
            0    5     1      context  Landroid/content/Context;
            0    5     2          uid  I
            0    5     3          pid  I
            0    5     4  packageName  Ljava/lang/String;
            0    5     5     callback  Landroid/os/IInterface;
    MethodParameters:
             Name  Flags
      context      
      uid          
      pid          
      packageName  
      callback     

  public java.lang.String getPackageName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaSession2$ControllerInfo this
         0: .line 717
            aload 0 /* this */
            getfield android.media.MediaSession2$ControllerInfo.mProvider:Landroid/media/update/MediaSession2Provider$ControllerInfoProvider;
            invokeinterface android.media.update.MediaSession2Provider$ControllerInfoProvider.getPackageName_impl:()Ljava/lang/String;
            areturn
        end local 0 // android.media.MediaSession2$ControllerInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaSession2$ControllerInfo;

  public int getUid();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaSession2$ControllerInfo this
         0: .line 724
            aload 0 /* this */
            getfield android.media.MediaSession2$ControllerInfo.mProvider:Landroid/media/update/MediaSession2Provider$ControllerInfoProvider;
            invokeinterface android.media.update.MediaSession2Provider$ControllerInfoProvider.getUid_impl:()I
            ireturn
        end local 0 // android.media.MediaSession2$ControllerInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaSession2$ControllerInfo;

  public boolean isTrusted();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaSession2$ControllerInfo this
         0: .line 735
            aload 0 /* this */
            getfield android.media.MediaSession2$ControllerInfo.mProvider:Landroid/media/update/MediaSession2Provider$ControllerInfoProvider;
            invokeinterface android.media.update.MediaSession2Provider$ControllerInfoProvider.isTrusted_impl:()Z
            ireturn
        end local 0 // android.media.MediaSession2$ControllerInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaSession2$ControllerInfo;

  public android.media.update.MediaSession2Provider$ControllerInfoProvider getProvider();
    descriptor: ()Landroid/media/update/MediaSession2Provider$ControllerInfoProvider;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaSession2$ControllerInfo this
         0: .line 742
            aload 0 /* this */
            getfield android.media.MediaSession2$ControllerInfo.mProvider:Landroid/media/update/MediaSession2Provider$ControllerInfoProvider;
            areturn
        end local 0 // android.media.MediaSession2$ControllerInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaSession2$ControllerInfo;

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaSession2$ControllerInfo this
         0: .line 747
            aload 0 /* this */
            getfield android.media.MediaSession2$ControllerInfo.mProvider:Landroid/media/update/MediaSession2Provider$ControllerInfoProvider;
            invokeinterface android.media.update.MediaSession2Provider$ControllerInfoProvider.hashCode_impl:()I
            ireturn
        end local 0 // android.media.MediaSession2$ControllerInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaSession2$ControllerInfo;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.media.MediaSession2$ControllerInfo this
        start local 1 // java.lang.Object obj
         0: .line 752
            aload 0 /* this */
            getfield android.media.MediaSession2$ControllerInfo.mProvider:Landroid/media/update/MediaSession2Provider$ControllerInfoProvider;
            aload 1 /* obj */
            invokeinterface android.media.update.MediaSession2Provider$ControllerInfoProvider.equals_impl:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // android.media.MediaSession2$ControllerInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaSession2$ControllerInfo;
            0    1     1   obj  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      obj   

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaSession2$ControllerInfo this
         0: .line 757
            aload 0 /* this */
            getfield android.media.MediaSession2$ControllerInfo.mProvider:Landroid/media/update/MediaSession2Provider$ControllerInfoProvider;
            invokeinterface android.media.update.MediaSession2Provider$ControllerInfoProvider.toString_impl:()Ljava/lang/String;
            areturn
        end local 0 // android.media.MediaSession2$ControllerInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaSession2$ControllerInfo;
}
SourceFile: "MediaSession2.java"
NestHost: android.media.MediaSession2
InnerClasses:
  public final ControllerInfo = android.media.MediaSession2$ControllerInfo of android.media.MediaSession2
  public abstract ControllerInfoProvider = android.media.update.MediaSession2Provider$ControllerInfoProvider of android.media.update.MediaSession2Provider