public class android.media.session.MediaSession$CallbackStub extends android.media.session.ISessionCallback$Stub
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.media.session.MediaSession$CallbackStub
  super_class: android.media.session.ISessionCallback$Stub
{
  private java.lang.ref.WeakReference<android.media.session.MediaSession> mMediaSession;
    descriptor: Ljava/lang/ref/WeakReference;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/ref/WeakReference<Landroid/media/session/MediaSession;>;

  public void <init>(android.media.session.MediaSession);
    descriptor: (Landroid/media/session/MediaSession;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // android.media.session.MediaSession session
         0: .line 1056
            aload 0 /* this */
            invokespecial android.media.session.ISessionCallback$Stub.<init>:()V
         1: .line 1057
            aload 0 /* this */
            new java.lang.ref.WeakReference
            dup
            aload 1 /* session */
            invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
            putfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
         2: .line 1058
            return
        end local 1 // android.media.session.MediaSession session
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Landroid/media/session/MediaSession$CallbackStub;
            0    3     1  session  Landroid/media/session/MediaSession;
    MethodParameters:
         Name  Flags
      session  

  private static android.media.session.MediaSessionManager$RemoteUserInfo createRemoteUserInfo(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // java.lang.String packageName
        start local 1 // int pid
        start local 2 // int uid
        start local 3 // android.media.session.ISessionControllerCallback caller
         0: .line 1062
            new android.media.session.MediaSessionManager$RemoteUserInfo
            dup
            aload 0 /* packageName */
            iload 1 /* pid */
            iload 2 /* uid */
         1: .line 1063
            aload 3 /* caller */
            ifnull 2
            aload 3 /* caller */
            invokeinterface android.media.session.ISessionControllerCallback.asBinder:()Landroid/os/IBinder;
            goto 3
      StackMap locals: java.lang.String int int android.media.session.ISessionControllerCallback
      StackMap stack: new 0 new 0 java.lang.String int int
         2: aconst_null
         3: .line 1062
      StackMap locals: java.lang.String int int android.media.session.ISessionControllerCallback
      StackMap stack: new 0 new 0 java.lang.String int int android.os.IBinder
            invokespecial android.media.session.MediaSessionManager$RemoteUserInfo.<init>:(Ljava/lang/String;IILandroid/os/IBinder;)V
            areturn
        end local 3 // android.media.session.ISessionControllerCallback caller
        end local 2 // int uid
        end local 1 // int pid
        end local 0 // java.lang.String packageName
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0  packageName  Ljava/lang/String;
            0    4     1          pid  I
            0    4     2          uid  I
            0    4     3       caller  Landroid/media/session/ISessionControllerCallback;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       

  public void onCommand(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle, android.os.ResultReceiver);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ResultReceiver;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=8
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // java.lang.String command
        start local 6 // android.os.Bundle args
        start local 7 // android.os.ResultReceiver cb
         0: .line 1069
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 8 /* session */
        start local 8 // android.media.session.MediaSession session
         1: .line 1070
            aload 8 /* session */
            ifnull 5
         2: .line 1071
            aload 8 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
         3: .line 1072
            aload 5 /* command */
            aload 6 /* args */
            aload 7 /* cb */
         4: .line 1071
            invokevirtual android.media.session.MediaSession.dispatchCommand:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ResultReceiver;)V
         5: .line 1074
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 8 // android.media.session.MediaSession session
        end local 7 // android.os.ResultReceiver cb
        end local 6 // android.os.Bundle args
        end local 5 // java.lang.String command
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    6     1  packageName  Ljava/lang/String;
            0    6     2          pid  I
            0    6     3          uid  I
            0    6     4       caller  Landroid/media/session/ISessionControllerCallback;
            0    6     5      command  Ljava/lang/String;
            0    6     6         args  Landroid/os/Bundle;
            0    6     7           cb  Landroid/os/ResultReceiver;
            1    6     8      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       
      command      
      args         
      cb           

  public void onMediaButton(java.lang.String, int, int, android.content.Intent, int, android.os.ResultReceiver);
    descriptor: (Ljava/lang/String;IILandroid/content/Intent;ILandroid/os/ResultReceiver;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=7
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.content.Intent mediaButtonIntent
        start local 5 // int sequenceNumber
        start local 6 // android.os.ResultReceiver cb
         0: .line 1079
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 7 /* session */
        start local 7 // android.media.session.MediaSession session
         1: .line 1081
            aload 7 /* session */
            ifnull 10
         2: .line 1082
            aload 7 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aconst_null
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
         3: .line 1083
            aload 4 /* mediaButtonIntent */
         4: .line 1082
            invokevirtual android.media.session.MediaSession.dispatchMediaButton:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;Landroid/content/Intent;)V
         5: .line 1085
            goto 10
      StackMap locals: android.media.session.MediaSession$CallbackStub java.lang.String int int android.content.Intent int android.os.ResultReceiver android.media.session.MediaSession
      StackMap stack: java.lang.Throwable
         6: astore 8
         7: .line 1086
            aload 6 /* cb */
            ifnull 9
         8: .line 1087
            aload 6 /* cb */
            iload 5 /* sequenceNumber */
            aconst_null
            invokevirtual android.os.ResultReceiver.send:(ILandroid/os/Bundle;)V
         9: .line 1089
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 8
            athrow
        10: .line 1086
      StackMap locals:
      StackMap stack:
            aload 6 /* cb */
            ifnull 12
        11: .line 1087
            aload 6 /* cb */
            iload 5 /* sequenceNumber */
            aconst_null
            invokevirtual android.os.ResultReceiver.send:(ILandroid/os/Bundle;)V
        12: .line 1090
      StackMap locals:
      StackMap stack:
            return
        end local 7 // android.media.session.MediaSession session
        end local 6 // android.os.ResultReceiver cb
        end local 5 // int sequenceNumber
        end local 4 // android.content.Intent mediaButtonIntent
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   13     0               this  Landroid/media/session/MediaSession$CallbackStub;
            0   13     1        packageName  Ljava/lang/String;
            0   13     2                pid  I
            0   13     3                uid  I
            0   13     4  mediaButtonIntent  Landroid/content/Intent;
            0   13     5     sequenceNumber  I
            0   13     6                 cb  Landroid/os/ResultReceiver;
            1   13     7            session  Landroid/media/session/MediaSession;
      Exception table:
        from    to  target  type
           1     6       6  any
    MethodParameters:
                   Name  Flags
      packageName        
      pid                
      uid                
      mediaButtonIntent  
      sequenceNumber     
      cb                 

  public void onMediaButtonFromController(java.lang.String, int, int, android.media.session.ISessionControllerCallback, android.content.Intent);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;Landroid/content/Intent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=6
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // android.content.Intent mediaButtonIntent
         0: .line 1095
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 6 /* session */
        start local 6 // android.media.session.MediaSession session
         1: .line 1096
            aload 6 /* session */
            ifnull 5
         2: .line 1097
            aload 6 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
         3: .line 1098
            aload 5 /* mediaButtonIntent */
         4: .line 1097
            invokevirtual android.media.session.MediaSession.dispatchMediaButton:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;Landroid/content/Intent;)V
         5: .line 1100
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 6 // android.media.session.MediaSession session
        end local 5 // android.content.Intent mediaButtonIntent
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0               this  Landroid/media/session/MediaSession$CallbackStub;
            0    6     1        packageName  Ljava/lang/String;
            0    6     2                pid  I
            0    6     3                uid  I
            0    6     4             caller  Landroid/media/session/ISessionControllerCallback;
            0    6     5  mediaButtonIntent  Landroid/content/Intent;
            1    6     6            session  Landroid/media/session/MediaSession;
    MethodParameters:
                   Name  Flags
      packageName        
      pid                
      uid                
      caller             
      mediaButtonIntent  

  public void onPrepare(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
         0: .line 1105
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 5 /* session */
        start local 5 // android.media.session.MediaSession session
         1: .line 1106
            aload 5 /* session */
            ifnull 3
         2: .line 1107
            aload 5 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
            invokevirtual android.media.session.MediaSession.dispatchPrepare:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;)V
         3: .line 1109
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 5 // android.media.session.MediaSession session
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    4     1  packageName  Ljava/lang/String;
            0    4     2          pid  I
            0    4     3          uid  I
            0    4     4       caller  Landroid/media/session/ISessionControllerCallback;
            1    4     5      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       

  public void onPrepareFromMediaId(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;Ljava/lang/String;Landroid/os/Bundle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=7
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // java.lang.String mediaId
        start local 6 // android.os.Bundle extras
         0: .line 1115
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 7 /* session */
        start local 7 // android.media.session.MediaSession session
         1: .line 1116
            aload 7 /* session */
            ifnull 5
         2: .line 1117
            aload 7 /* session */
         3: .line 1118
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
            aload 5 /* mediaId */
            aload 6 /* extras */
         4: .line 1117
            invokevirtual android.media.session.MediaSession.dispatchPrepareFromMediaId:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;Ljava/lang/String;Landroid/os/Bundle;)V
         5: .line 1120
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 7 // android.media.session.MediaSession session
        end local 6 // android.os.Bundle extras
        end local 5 // java.lang.String mediaId
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    6     1  packageName  Ljava/lang/String;
            0    6     2          pid  I
            0    6     3          uid  I
            0    6     4       caller  Landroid/media/session/ISessionControllerCallback;
            0    6     5      mediaId  Ljava/lang/String;
            0    6     6       extras  Landroid/os/Bundle;
            1    6     7      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       
      mediaId      
      extras       

  public void onPrepareFromSearch(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;Ljava/lang/String;Landroid/os/Bundle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=7
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // java.lang.String query
        start local 6 // android.os.Bundle extras
         0: .line 1126
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 7 /* session */
        start local 7 // android.media.session.MediaSession session
         1: .line 1127
            aload 7 /* session */
            ifnull 5
         2: .line 1128
            aload 7 /* session */
         3: .line 1129
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
            aload 5 /* query */
            aload 6 /* extras */
         4: .line 1128
            invokevirtual android.media.session.MediaSession.dispatchPrepareFromSearch:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;Ljava/lang/String;Landroid/os/Bundle;)V
         5: .line 1131
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 7 // android.media.session.MediaSession session
        end local 6 // android.os.Bundle extras
        end local 5 // java.lang.String query
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    6     1  packageName  Ljava/lang/String;
            0    6     2          pid  I
            0    6     3          uid  I
            0    6     4       caller  Landroid/media/session/ISessionControllerCallback;
            0    6     5        query  Ljava/lang/String;
            0    6     6       extras  Landroid/os/Bundle;
            1    6     7      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       
      query        
      extras       

  public void onPrepareFromUri(java.lang.String, int, int, android.media.session.ISessionControllerCallback, android.net.Uri, android.os.Bundle);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;Landroid/net/Uri;Landroid/os/Bundle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=7
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // android.net.Uri uri
        start local 6 // android.os.Bundle extras
         0: .line 1136
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 7 /* session */
        start local 7 // android.media.session.MediaSession session
         1: .line 1137
            aload 7 /* session */
            ifnull 5
         2: .line 1138
            aload 7 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
         3: .line 1139
            aload 5 /* uri */
            aload 6 /* extras */
         4: .line 1138
            invokevirtual android.media.session.MediaSession.dispatchPrepareFromUri:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;Landroid/net/Uri;Landroid/os/Bundle;)V
         5: .line 1141
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 7 // android.media.session.MediaSession session
        end local 6 // android.os.Bundle extras
        end local 5 // android.net.Uri uri
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    6     1  packageName  Ljava/lang/String;
            0    6     2          pid  I
            0    6     3          uid  I
            0    6     4       caller  Landroid/media/session/ISessionControllerCallback;
            0    6     5          uri  Landroid/net/Uri;
            0    6     6       extras  Landroid/os/Bundle;
            1    6     7      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       
      uri          
      extras       

  public void onPlay(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
         0: .line 1146
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 5 /* session */
        start local 5 // android.media.session.MediaSession session
         1: .line 1147
            aload 5 /* session */
            ifnull 3
         2: .line 1148
            aload 5 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
            invokevirtual android.media.session.MediaSession.dispatchPlay:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;)V
         3: .line 1150
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 5 // android.media.session.MediaSession session
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    4     1  packageName  Ljava/lang/String;
            0    4     2          pid  I
            0    4     3          uid  I
            0    4     4       caller  Landroid/media/session/ISessionControllerCallback;
            1    4     5      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       

  public void onPlayFromMediaId(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;Ljava/lang/String;Landroid/os/Bundle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=7
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // java.lang.String mediaId
        start local 6 // android.os.Bundle extras
         0: .line 1156
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 7 /* session */
        start local 7 // android.media.session.MediaSession session
         1: .line 1157
            aload 7 /* session */
            ifnull 5
         2: .line 1158
            aload 7 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
         3: .line 1159
            aload 5 /* mediaId */
            aload 6 /* extras */
         4: .line 1158
            invokevirtual android.media.session.MediaSession.dispatchPlayFromMediaId:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;Ljava/lang/String;Landroid/os/Bundle;)V
         5: .line 1161
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 7 // android.media.session.MediaSession session
        end local 6 // android.os.Bundle extras
        end local 5 // java.lang.String mediaId
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    6     1  packageName  Ljava/lang/String;
            0    6     2          pid  I
            0    6     3          uid  I
            0    6     4       caller  Landroid/media/session/ISessionControllerCallback;
            0    6     5      mediaId  Ljava/lang/String;
            0    6     6       extras  Landroid/os/Bundle;
            1    6     7      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       
      mediaId      
      extras       

  public void onPlayFromSearch(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;Ljava/lang/String;Landroid/os/Bundle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=7
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // java.lang.String query
        start local 6 // android.os.Bundle extras
         0: .line 1167
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 7 /* session */
        start local 7 // android.media.session.MediaSession session
         1: .line 1168
            aload 7 /* session */
            ifnull 5
         2: .line 1169
            aload 7 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
         3: .line 1170
            aload 5 /* query */
            aload 6 /* extras */
         4: .line 1169
            invokevirtual android.media.session.MediaSession.dispatchPlayFromSearch:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;Ljava/lang/String;Landroid/os/Bundle;)V
         5: .line 1172
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 7 // android.media.session.MediaSession session
        end local 6 // android.os.Bundle extras
        end local 5 // java.lang.String query
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    6     1  packageName  Ljava/lang/String;
            0    6     2          pid  I
            0    6     3          uid  I
            0    6     4       caller  Landroid/media/session/ISessionControllerCallback;
            0    6     5        query  Ljava/lang/String;
            0    6     6       extras  Landroid/os/Bundle;
            1    6     7      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       
      query        
      extras       

  public void onPlayFromUri(java.lang.String, int, int, android.media.session.ISessionControllerCallback, android.net.Uri, android.os.Bundle);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;Landroid/net/Uri;Landroid/os/Bundle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=7
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // android.net.Uri uri
        start local 6 // android.os.Bundle extras
         0: .line 1177
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 7 /* session */
        start local 7 // android.media.session.MediaSession session
         1: .line 1178
            aload 7 /* session */
            ifnull 5
         2: .line 1179
            aload 7 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
         3: .line 1180
            aload 5 /* uri */
            aload 6 /* extras */
         4: .line 1179
            invokevirtual android.media.session.MediaSession.dispatchPlayFromUri:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;Landroid/net/Uri;Landroid/os/Bundle;)V
         5: .line 1182
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 7 // android.media.session.MediaSession session
        end local 6 // android.os.Bundle extras
        end local 5 // android.net.Uri uri
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    6     1  packageName  Ljava/lang/String;
            0    6     2          pid  I
            0    6     3          uid  I
            0    6     4       caller  Landroid/media/session/ISessionControllerCallback;
            0    6     5          uri  Landroid/net/Uri;
            0    6     6       extras  Landroid/os/Bundle;
            1    6     7      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       
      uri          
      extras       

  public void onSkipToTrack(java.lang.String, int, int, android.media.session.ISessionControllerCallback, long);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=6
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // long id
         0: .line 1187
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 7 /* session */
        start local 7 // android.media.session.MediaSession session
         1: .line 1188
            aload 7 /* session */
            ifnull 3
         2: .line 1189
            aload 7 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
            lload 5 /* id */
            invokevirtual android.media.session.MediaSession.dispatchSkipToItem:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;J)V
         3: .line 1191
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 7 // android.media.session.MediaSession session
        end local 5 // long id
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    4     1  packageName  Ljava/lang/String;
            0    4     2          pid  I
            0    4     3          uid  I
            0    4     4       caller  Landroid/media/session/ISessionControllerCallback;
            0    4     5           id  J
            1    4     7      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       
      id           

  public void onPause(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
         0: .line 1196
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 5 /* session */
        start local 5 // android.media.session.MediaSession session
         1: .line 1197
            aload 5 /* session */
            ifnull 3
         2: .line 1198
            aload 5 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
            invokevirtual android.media.session.MediaSession.dispatchPause:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;)V
         3: .line 1200
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 5 // android.media.session.MediaSession session
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    4     1  packageName  Ljava/lang/String;
            0    4     2          pid  I
            0    4     3          uid  I
            0    4     4       caller  Landroid/media/session/ISessionControllerCallback;
            1    4     5      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       

  public void onStop(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
         0: .line 1205
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 5 /* session */
        start local 5 // android.media.session.MediaSession session
         1: .line 1206
            aload 5 /* session */
            ifnull 3
         2: .line 1207
            aload 5 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
            invokevirtual android.media.session.MediaSession.dispatchStop:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;)V
         3: .line 1209
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 5 // android.media.session.MediaSession session
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    4     1  packageName  Ljava/lang/String;
            0    4     2          pid  I
            0    4     3          uid  I
            0    4     4       caller  Landroid/media/session/ISessionControllerCallback;
            1    4     5      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       

  public void onNext(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
         0: .line 1214
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 5 /* session */
        start local 5 // android.media.session.MediaSession session
         1: .line 1215
            aload 5 /* session */
            ifnull 3
         2: .line 1216
            aload 5 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
            invokevirtual android.media.session.MediaSession.dispatchNext:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;)V
         3: .line 1218
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 5 // android.media.session.MediaSession session
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    4     1  packageName  Ljava/lang/String;
            0    4     2          pid  I
            0    4     3          uid  I
            0    4     4       caller  Landroid/media/session/ISessionControllerCallback;
            1    4     5      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       

  public void onPrevious(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
         0: .line 1223
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 5 /* session */
        start local 5 // android.media.session.MediaSession session
         1: .line 1224
            aload 5 /* session */
            ifnull 3
         2: .line 1225
            aload 5 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
            invokevirtual android.media.session.MediaSession.dispatchPrevious:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;)V
         3: .line 1227
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 5 // android.media.session.MediaSession session
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    4     1  packageName  Ljava/lang/String;
            0    4     2          pid  I
            0    4     3          uid  I
            0    4     4       caller  Landroid/media/session/ISessionControllerCallback;
            1    4     5      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       

  public void onFastForward(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
         0: .line 1232
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 5 /* session */
        start local 5 // android.media.session.MediaSession session
         1: .line 1233
            aload 5 /* session */
            ifnull 3
         2: .line 1234
            aload 5 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
            invokevirtual android.media.session.MediaSession.dispatchFastForward:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;)V
         3: .line 1236
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 5 // android.media.session.MediaSession session
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    4     1  packageName  Ljava/lang/String;
            0    4     2          pid  I
            0    4     3          uid  I
            0    4     4       caller  Landroid/media/session/ISessionControllerCallback;
            1    4     5      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       

  public void onRewind(java.lang.String, int, int, android.media.session.ISessionControllerCallback);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
         0: .line 1241
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 5 /* session */
        start local 5 // android.media.session.MediaSession session
         1: .line 1242
            aload 5 /* session */
            ifnull 3
         2: .line 1243
            aload 5 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
            invokevirtual android.media.session.MediaSession.dispatchRewind:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;)V
         3: .line 1245
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 5 // android.media.session.MediaSession session
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    4     1  packageName  Ljava/lang/String;
            0    4     2          pid  I
            0    4     3          uid  I
            0    4     4       caller  Landroid/media/session/ISessionControllerCallback;
            1    4     5      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       

  public void onSeekTo(java.lang.String, int, int, android.media.session.ISessionControllerCallback, long);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=6
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // long pos
         0: .line 1250
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 7 /* session */
        start local 7 // android.media.session.MediaSession session
         1: .line 1251
            aload 7 /* session */
            ifnull 3
         2: .line 1252
            aload 7 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
            lload 5 /* pos */
            invokevirtual android.media.session.MediaSession.dispatchSeekTo:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;J)V
         3: .line 1254
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 7 // android.media.session.MediaSession session
        end local 5 // long pos
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    4     1  packageName  Ljava/lang/String;
            0    4     2          pid  I
            0    4     3          uid  I
            0    4     4       caller  Landroid/media/session/ISessionControllerCallback;
            0    4     5          pos  J
            1    4     7      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       
      pos          

  public void onRate(java.lang.String, int, int, android.media.session.ISessionControllerCallback, android.media.Rating);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;Landroid/media/Rating;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=6
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // android.media.Rating rating
         0: .line 1259
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 6 /* session */
        start local 6 // android.media.session.MediaSession session
         1: .line 1260
            aload 6 /* session */
            ifnull 3
         2: .line 1261
            aload 6 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
            aload 5 /* rating */
            invokevirtual android.media.session.MediaSession.dispatchRate:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;Landroid/media/Rating;)V
         3: .line 1263
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 6 // android.media.session.MediaSession session
        end local 5 // android.media.Rating rating
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    4     1  packageName  Ljava/lang/String;
            0    4     2          pid  I
            0    4     3          uid  I
            0    4     4       caller  Landroid/media/session/ISessionControllerCallback;
            0    4     5       rating  Landroid/media/Rating;
            1    4     6      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       
      rating       

  public void onCustomAction(java.lang.String, int, int, android.media.session.ISessionControllerCallback, java.lang.String, android.os.Bundle);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;Ljava/lang/String;Landroid/os/Bundle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=7
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // java.lang.String action
        start local 6 // android.os.Bundle args
         0: .line 1268
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 7 /* session */
        start local 7 // android.media.session.MediaSession session
         1: .line 1269
            aload 7 /* session */
            ifnull 5
         2: .line 1270
            aload 7 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
         3: .line 1271
            aload 5 /* action */
            aload 6 /* args */
         4: .line 1270
            invokevirtual android.media.session.MediaSession.dispatchCustomAction:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;Ljava/lang/String;Landroid/os/Bundle;)V
         5: .line 1273
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 7 // android.media.session.MediaSession session
        end local 6 // android.os.Bundle args
        end local 5 // java.lang.String action
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    6     1  packageName  Ljava/lang/String;
            0    6     2          pid  I
            0    6     3          uid  I
            0    6     4       caller  Landroid/media/session/ISessionControllerCallback;
            0    6     5       action  Ljava/lang/String;
            0    6     6         args  Landroid/os/Bundle;
            1    6     7      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       
      action       
      args         

  public void onAdjustVolume(java.lang.String, int, int, android.media.session.ISessionControllerCallback, int);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=6
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // int direction
         0: .line 1278
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 6 /* session */
        start local 6 // android.media.session.MediaSession session
         1: .line 1279
            aload 6 /* session */
            ifnull 5
         2: .line 1280
            aload 6 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
         3: .line 1281
            iload 5 /* direction */
         4: .line 1280
            invokevirtual android.media.session.MediaSession.dispatchAdjustVolume:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;I)V
         5: .line 1283
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 6 // android.media.session.MediaSession session
        end local 5 // int direction
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    6     1  packageName  Ljava/lang/String;
            0    6     2          pid  I
            0    6     3          uid  I
            0    6     4       caller  Landroid/media/session/ISessionControllerCallback;
            0    6     5    direction  I
            1    6     6      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       
      direction    

  public void onSetVolumeTo(java.lang.String, int, int, android.media.session.ISessionControllerCallback, int);
    descriptor: (Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=6
        start local 0 // android.media.session.MediaSession$CallbackStub this
        start local 1 // java.lang.String packageName
        start local 2 // int pid
        start local 3 // int uid
        start local 4 // android.media.session.ISessionControllerCallback caller
        start local 5 // int value
         0: .line 1288
            aload 0 /* this */
            getfield android.media.session.MediaSession$CallbackStub.mMediaSession:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.media.session.MediaSession
            astore 6 /* session */
        start local 6 // android.media.session.MediaSession session
         1: .line 1289
            aload 6 /* session */
            ifnull 5
         2: .line 1290
            aload 6 /* session */
            aload 1 /* packageName */
            iload 2 /* pid */
            iload 3 /* uid */
            aload 4 /* caller */
            invokestatic android.media.session.MediaSession$CallbackStub.createRemoteUserInfo:(Ljava/lang/String;IILandroid/media/session/ISessionControllerCallback;)Landroid/media/session/MediaSessionManager$RemoteUserInfo;
         3: .line 1291
            iload 5 /* value */
         4: .line 1290
            invokevirtual android.media.session.MediaSession.dispatchSetVolumeTo:(Landroid/media/session/MediaSessionManager$RemoteUserInfo;I)V
         5: .line 1293
      StackMap locals: android.media.session.MediaSession
      StackMap stack:
            return
        end local 6 // android.media.session.MediaSession session
        end local 5 // int value
        end local 4 // android.media.session.ISessionControllerCallback caller
        end local 3 // int uid
        end local 2 // int pid
        end local 1 // java.lang.String packageName
        end local 0 // android.media.session.MediaSession$CallbackStub this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Landroid/media/session/MediaSession$CallbackStub;
            0    6     1  packageName  Ljava/lang/String;
            0    6     2          pid  I
            0    6     3          uid  I
            0    6     4       caller  Landroid/media/session/ISessionControllerCallback;
            0    6     5        value  I
            1    6     6      session  Landroid/media/session/MediaSession;
    MethodParameters:
             Name  Flags
      packageName  
      pid          
      uid          
      caller       
      value        
}
SourceFile: "MediaSession.java"
NestHost: android.media.session.MediaSession
InnerClasses:
  public abstract Stub = android.media.session.ISessionCallback$Stub of android.media.session.ISessionCallback
  public CallbackStub = android.media.session.MediaSession$CallbackStub of android.media.session.MediaSession
  public final RemoteUserInfo = android.media.session.MediaSessionManager$RemoteUserInfo of android.media.session.MediaSessionManager