public class android.content.pm.PackageInstaller
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.content.pm.PackageInstaller
  super_class: java.lang.Object
{
  private static final java.lang.String TAG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PackageInstaller"

  public static final boolean ENABLE_REVOCABLE_FD;
    descriptor: Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final java.lang.String ACTION_SESSION_DETAILS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.action.SESSION_DETAILS"

  public static final java.lang.String ACTION_SESSION_COMMITTED;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.action.SESSION_COMMITTED"

  public static final java.lang.String ACTION_CONFIRM_PERMISSIONS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.action.CONFIRM_PERMISSIONS"

  public static final java.lang.String EXTRA_SESSION_ID;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.extra.SESSION_ID"

  public static final java.lang.String EXTRA_SESSION;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.extra.SESSION"

  public static final java.lang.String EXTRA_PACKAGE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.extra.PACKAGE_NAME"

  public static final java.lang.String EXTRA_STATUS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.extra.STATUS"

  public static final java.lang.String EXTRA_STATUS_MESSAGE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.extra.STATUS_MESSAGE"

  public static final java.lang.String EXTRA_OTHER_PACKAGE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.extra.OTHER_PACKAGE_NAME"

  public static final java.lang.String EXTRA_STORAGE_PATH;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.extra.STORAGE_PATH"

  public static final java.lang.String EXTRA_PACKAGE_NAMES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.extra.PACKAGE_NAMES"
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final java.lang.String EXTRA_LEGACY_STATUS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.extra.LEGACY_STATUS"

  public static final java.lang.String EXTRA_LEGACY_BUNDLE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.extra.LEGACY_BUNDLE"

  public static final java.lang.String EXTRA_CALLBACK;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "android.content.pm.extra.CALLBACK"

  public static final int STATUS_PENDING_USER_ACTION;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  public static final int STATUS_SUCCESS;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int STATUS_FAILURE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int STATUS_FAILURE_BLOCKED;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int STATUS_FAILURE_ABORTED;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final int STATUS_FAILURE_INVALID;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  public static final int STATUS_FAILURE_CONFLICT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  public static final int STATUS_FAILURE_STORAGE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 6

  public static final int STATUS_FAILURE_INCOMPATIBLE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 7

  private final android.content.pm.IPackageInstaller mInstaller;
    descriptor: Landroid/content/pm/IPackageInstaller;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int mUserId;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String mInstallerPackageName;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.ArrayList<android.content.pm.PackageInstaller$SessionCallbackDelegate> mDelegates;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/ArrayList<Landroid/content/pm/PackageInstaller$SessionCallbackDelegate;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 93
            ldc "fw.revocable_fd"
            iconst_0
            invokestatic android.os.SystemProperties.getBoolean:(Ljava/lang/String;Z)Z
         1: .line 92
            putstatic android.content.pm.PackageInstaller.ENABLE_REVOCABLE_FD:Z
         2: .line 291
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(android.content.pm.IPackageInstaller, java.lang.String, int);
    descriptor: (Landroid/content/pm/IPackageInstaller;Ljava/lang/String;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // android.content.pm.IPackageInstaller installer
        start local 2 // java.lang.String installerPackageName
        start local 3 // int userId
         0: .line 300
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 297
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield android.content.pm.PackageInstaller.mDelegates:Ljava/util/ArrayList;
         2: .line 302
            aload 0 /* this */
            aload 1 /* installer */
            putfield android.content.pm.PackageInstaller.mInstaller:Landroid/content/pm/IPackageInstaller;
         3: .line 303
            aload 0 /* this */
            aload 2 /* installerPackageName */
            putfield android.content.pm.PackageInstaller.mInstallerPackageName:Ljava/lang/String;
         4: .line 304
            aload 0 /* this */
            iload 3 /* userId */
            putfield android.content.pm.PackageInstaller.mUserId:I
         5: .line 305
            return
        end local 3 // int userId
        end local 2 // java.lang.String installerPackageName
        end local 1 // android.content.pm.IPackageInstaller installer
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    6     0                  this  Landroid/content/pm/PackageInstaller;
            0    6     1             installer  Landroid/content/pm/IPackageInstaller;
            0    6     2  installerPackageName  Ljava/lang/String;
            0    6     3                userId  I
    MethodParameters:
                      Name  Flags
      installer             
      installerPackageName  
      userId                

  public int createSession(android.content.pm.PackageInstaller$SessionParams);
    descriptor: (Landroid/content/pm/PackageInstaller$SessionParams;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // android.content.pm.PackageInstaller$SessionParams params
         0: .line 328
            aload 1 /* params */
            getfield android.content.pm.PackageInstaller$SessionParams.installerPackageName:Ljava/lang/String;
            ifnonnull 3
         1: .line 329
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mInstallerPackageName:Ljava/lang/String;
            astore 2 /* installerPackage */
        start local 2 // java.lang.String installerPackage
         2: .line 330
            goto 4
        end local 2 // java.lang.String installerPackage
         3: .line 331
      StackMap locals:
      StackMap stack:
            aload 1 /* params */
            getfield android.content.pm.PackageInstaller$SessionParams.installerPackageName:Ljava/lang/String;
            astore 2 /* installerPackage */
        start local 2 // java.lang.String installerPackage
         4: .line 334
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mInstaller:Landroid/content/pm/IPackageInstaller;
            aload 1 /* params */
            aload 2 /* installerPackage */
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mUserId:I
            invokeinterface android.content.pm.IPackageInstaller.createSession:(Landroid/content/pm/PackageInstaller$SessionParams;Ljava/lang/String;I)I
         5: ireturn
        end local 2 // java.lang.String installerPackage
         6: .line 335
      StackMap locals: android.content.pm.PackageInstaller android.content.pm.PackageInstaller$SessionParams
      StackMap stack: java.lang.RuntimeException
            astore 2 /* e */
        start local 2 // java.lang.RuntimeException e
         7: .line 336
            aload 2 /* e */
            invokestatic android.util.ExceptionUtils.maybeUnwrapIOException:(Ljava/lang/RuntimeException;)V
         8: .line 337
            aload 2 /* e */
            athrow
        end local 2 // java.lang.RuntimeException e
         9: .line 338
      StackMap locals:
      StackMap stack: android.os.RemoteException
            astore 2 /* e */
        start local 2 // android.os.RemoteException e
        10: .line 339
            aload 2 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 2 // android.os.RemoteException e
        end local 1 // android.content.pm.PackageInstaller$SessionParams params
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   11     0              this  Landroid/content/pm/PackageInstaller;
            0   11     1            params  Landroid/content/pm/PackageInstaller$SessionParams;
            2    3     2  installerPackage  Ljava/lang/String;
            4    6     2  installerPackage  Ljava/lang/String;
            7    9     2                 e  Ljava/lang/RuntimeException;
           10   11     2                 e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     5       6  Class java.lang.RuntimeException
           0     5       9  Class android.os.RemoteException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      params  

  public android.content.pm.PackageInstaller$Session openSession(int);
    descriptor: (I)Landroid/content/pm/PackageInstaller$Session;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // int sessionId
         0: .line 354
            new android.content.pm.PackageInstaller$Session
            dup
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mInstaller:Landroid/content/pm/IPackageInstaller;
            iload 1 /* sessionId */
            invokeinterface android.content.pm.IPackageInstaller.openSession:(I)Landroid/content/pm/IPackageInstallerSession;
            invokespecial android.content.pm.PackageInstaller$Session.<init>:(Landroid/content/pm/IPackageInstallerSession;)V
         1: areturn
         2: .line 355
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            astore 2 /* e */
        start local 2 // java.lang.RuntimeException e
         3: .line 356
            aload 2 /* e */
            invokestatic android.util.ExceptionUtils.maybeUnwrapIOException:(Ljava/lang/RuntimeException;)V
         4: .line 357
            aload 2 /* e */
            athrow
        end local 2 // java.lang.RuntimeException e
         5: .line 358
      StackMap locals:
      StackMap stack: android.os.RemoteException
            astore 2 /* e */
        start local 2 // android.os.RemoteException e
         6: .line 359
            aload 2 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 2 // android.os.RemoteException e
        end local 1 // int sessionId
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Landroid/content/pm/PackageInstaller;
            0    7     1  sessionId  I
            3    5     2          e  Ljava/lang/RuntimeException;
            6    7     2          e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.RuntimeException
           0     1       5  Class android.os.RemoteException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      sessionId  

  public void updateSessionAppIcon(int, android.graphics.Bitmap);
    descriptor: (ILandroid/graphics/Bitmap;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // int sessionId
        start local 2 // android.graphics.Bitmap appIcon
         0: .line 373
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mInstaller:Landroid/content/pm/IPackageInstaller;
            iload 1 /* sessionId */
            aload 2 /* appIcon */
            invokeinterface android.content.pm.IPackageInstaller.updateSessionAppIcon:(ILandroid/graphics/Bitmap;)V
         1: .line 374
            goto 4
      StackMap locals:
      StackMap stack: android.os.RemoteException
         2: astore 3 /* e */
        start local 3 // android.os.RemoteException e
         3: .line 375
            aload 3 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 3 // android.os.RemoteException e
         4: .line 377
      StackMap locals:
      StackMap stack:
            return
        end local 2 // android.graphics.Bitmap appIcon
        end local 1 // int sessionId
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Landroid/content/pm/PackageInstaller;
            0    5     1  sessionId  I
            0    5     2    appIcon  Landroid/graphics/Bitmap;
            3    4     3          e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     1       2  Class android.os.RemoteException
    MethodParameters:
           Name  Flags
      sessionId  
      appIcon    

  public void updateSessionAppLabel(int, java.lang.CharSequence);
    descriptor: (ILjava/lang/CharSequence;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // int sessionId
        start local 2 // java.lang.CharSequence appLabel
         0: .line 388
            aload 2 /* appLabel */
            ifnull 1
            aload 2 /* appLabel */
            invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aconst_null
      StackMap locals:
      StackMap stack: java.lang.String
         2: astore 3 /* val */
        start local 3 // java.lang.String val
         3: .line 389
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mInstaller:Landroid/content/pm/IPackageInstaller;
            iload 1 /* sessionId */
            aload 3 /* val */
            invokeinterface android.content.pm.IPackageInstaller.updateSessionAppLabel:(ILjava/lang/String;)V
        end local 3 // java.lang.String val
         4: .line 390
            goto 7
      StackMap locals:
      StackMap stack: android.os.RemoteException
         5: astore 3 /* e */
        start local 3 // android.os.RemoteException e
         6: .line 391
            aload 3 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 3 // android.os.RemoteException e
         7: .line 393
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.CharSequence appLabel
        end local 1 // int sessionId
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Landroid/content/pm/PackageInstaller;
            0    8     1  sessionId  I
            0    8     2   appLabel  Ljava/lang/CharSequence;
            3    4     3        val  Ljava/lang/String;
            6    7     3          e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     4       5  Class android.os.RemoteException
    MethodParameters:
           Name  Flags
      sessionId  
      appLabel   

  public void abandonSession(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // int sessionId
         0: .line 406
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mInstaller:Landroid/content/pm/IPackageInstaller;
            iload 1 /* sessionId */
            invokeinterface android.content.pm.IPackageInstaller.abandonSession:(I)V
         1: .line 407
            goto 4
      StackMap locals:
      StackMap stack: android.os.RemoteException
         2: astore 2 /* e */
        start local 2 // android.os.RemoteException e
         3: .line 408
            aload 2 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 2 // android.os.RemoteException e
         4: .line 410
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int sessionId
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Landroid/content/pm/PackageInstaller;
            0    5     1  sessionId  I
            3    4     2          e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     1       2  Class android.os.RemoteException
    MethodParameters:
           Name  Flags
      sessionId  

  public android.content.pm.PackageInstaller$SessionInfo getSessionInfo(int);
    descriptor: (I)Landroid/content/pm/PackageInstaller$SessionInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // int sessionId
         0: .line 421
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mInstaller:Landroid/content/pm/IPackageInstaller;
            iload 1 /* sessionId */
            invokeinterface android.content.pm.IPackageInstaller.getSessionInfo:(I)Landroid/content/pm/PackageInstaller$SessionInfo;
         1: areturn
         2: .line 422
      StackMap locals:
      StackMap stack: android.os.RemoteException
            astore 2 /* e */
        start local 2 // android.os.RemoteException e
         3: .line 423
            aload 2 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 2 // android.os.RemoteException e
        end local 1 // int sessionId
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Landroid/content/pm/PackageInstaller;
            0    4     1  sessionId  I
            3    4     2          e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     1       2  Class android.os.RemoteException
    MethodParameters:
           Name  Flags
      sessionId  

  public java.util.List<android.content.pm.PackageInstaller$SessionInfo> getAllSessions();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // android.content.pm.PackageInstaller this
         0: .line 432
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mInstaller:Landroid/content/pm/IPackageInstaller;
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mUserId:I
            invokeinterface android.content.pm.IPackageInstaller.getAllSessions:(I)Landroid/content/pm/ParceledListSlice;
            invokevirtual android.content.pm.ParceledListSlice.getList:()Ljava/util/List;
         1: areturn
         2: .line 433
      StackMap locals:
      StackMap stack: android.os.RemoteException
            astore 1 /* e */
        start local 1 // android.os.RemoteException e
         3: .line 434
            aload 1 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 1 // android.os.RemoteException e
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Landroid/content/pm/PackageInstaller;
            3    4     1     e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     1       2  Class android.os.RemoteException
    Signature: ()Ljava/util/List<Landroid/content/pm/PackageInstaller$SessionInfo;>;

  public java.util.List<android.content.pm.PackageInstaller$SessionInfo> getMySessions();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // android.content.pm.PackageInstaller this
         0: .line 443
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mInstaller:Landroid/content/pm/IPackageInstaller;
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mInstallerPackageName:Ljava/lang/String;
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mUserId:I
            invokeinterface android.content.pm.IPackageInstaller.getMySessions:(Ljava/lang/String;I)Landroid/content/pm/ParceledListSlice;
            invokevirtual android.content.pm.ParceledListSlice.getList:()Ljava/util/List;
         1: areturn
         2: .line 444
      StackMap locals:
      StackMap stack: android.os.RemoteException
            astore 1 /* e */
        start local 1 // android.os.RemoteException e
         3: .line 445
            aload 1 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 1 // android.os.RemoteException e
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Landroid/content/pm/PackageInstaller;
            3    4     1     e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           0     1       2  Class android.os.RemoteException
    Signature: ()Ljava/util/List<Landroid/content/pm/PackageInstaller$SessionInfo;>;

  public void uninstall(java.lang.String, android.content.IntentSender);
    descriptor: (Ljava/lang/String;Landroid/content/IntentSender;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.content.pm.PackageInstaller this
         0: .line 464
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tManifest cannot be resolved to a variable\n\tManifest cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/content/pm/PackageInstaller;
    MethodParameters:
                Name  Flags
      packageName     
      statusReceiver  

  public void uninstall(java.lang.String, int, android.content.IntentSender);
    descriptor: (Ljava/lang/String;ILandroid/content/IntentSender;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // java.lang.String packageName
        start local 2 // int flags
        start local 3 // android.content.IntentSender statusReceiver
         0: .line 483
            aload 0 /* this */
            new android.content.pm.VersionedPackage
            dup
            aload 1 /* packageName */
            iconst_m1
            invokespecial android.content.pm.VersionedPackage.<init>:(Ljava/lang/String;I)V
         1: .line 484
            iload 2 /* flags */
            aload 3 /* statusReceiver */
         2: .line 483
            invokevirtual android.content.pm.PackageInstaller.uninstall:(Landroid/content/pm/VersionedPackage;ILandroid/content/IntentSender;)V
         3: .line 485
            return
        end local 3 // android.content.IntentSender statusReceiver
        end local 2 // int flags
        end local 1 // java.lang.String packageName
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Landroid/content/pm/PackageInstaller;
            0    4     1     packageName  Ljava/lang/String;
            0    4     2           flags  I
            0    4     3  statusReceiver  Landroid/content/IntentSender;
    MethodParameters:
                Name  Flags
      packageName     
      flags           
      statusReceiver  

  public void uninstall(android.content.pm.VersionedPackage, android.content.IntentSender);
    descriptor: (Landroid/content/pm/VersionedPackage;Landroid/content/IntentSender;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.content.pm.PackageInstaller this
         0: .line 507
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tManifest cannot be resolved to a variable\n\tManifest cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/content/pm/PackageInstaller;
    MethodParameters:
                  Name  Flags
      versionedPackage  
      statusReceiver    

  public void uninstall(android.content.pm.VersionedPackage, int, android.content.IntentSender);
    descriptor: (Landroid/content/pm/VersionedPackage;ILandroid/content/IntentSender;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // android.content.pm.PackageInstaller this
         0: .line 529
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tManifest cannot be resolved to a variable\n\tManifest cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/content/pm/PackageInstaller;
    MethodParameters:
                  Name  Flags
      versionedPackage  
      flags             
      statusReceiver    

  public void setPermissionsResult(int, boolean);
    descriptor: (IZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.content.pm.PackageInstaller this
         0: .line 544
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tandroid.Manifest.permission.INSTALL_PACKAGES cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/content/pm/PackageInstaller;
    RuntimeVisibleAnnotations: 
      android.annotation.SystemApi()
    MethodParameters:
           Name  Flags
      sessionId  
      accepted   

  public void addSessionCallback(android.content.pm.PackageInstaller$SessionCallback);
    descriptor: (Landroid/content/pm/PackageInstaller$SessionCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // android.content.pm.PackageInstaller$SessionCallback callback
         0: .line 685
            aload 0 /* this */
            aload 1 /* callback */
            invokevirtual android.content.pm.PackageInstaller.registerSessionCallback:(Landroid/content/pm/PackageInstaller$SessionCallback;)V
         1: .line 686
            return
        end local 1 // android.content.pm.PackageInstaller$SessionCallback callback
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Landroid/content/pm/PackageInstaller;
            0    2     1  callback  Landroid/content/pm/PackageInstaller$SessionCallback;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      callback  

  public void registerSessionCallback(android.content.pm.PackageInstaller$SessionCallback);
    descriptor: (Landroid/content/pm/PackageInstaller$SessionCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // android.content.pm.PackageInstaller$SessionCallback callback
         0: .line 693
            aload 0 /* this */
            aload 1 /* callback */
            new android.os.Handler
            dup
            invokespecial android.os.Handler.<init>:()V
            invokevirtual android.content.pm.PackageInstaller.registerSessionCallback:(Landroid/content/pm/PackageInstaller$SessionCallback;Landroid/os/Handler;)V
         1: .line 694
            return
        end local 1 // android.content.pm.PackageInstaller$SessionCallback callback
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Landroid/content/pm/PackageInstaller;
            0    2     1  callback  Landroid/content/pm/PackageInstaller$SessionCallback;
    MethodParameters:
          Name  Flags
      callback  

  public void addSessionCallback(android.content.pm.PackageInstaller$SessionCallback, android.os.Handler);
    descriptor: (Landroid/content/pm/PackageInstaller$SessionCallback;Landroid/os/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // android.content.pm.PackageInstaller$SessionCallback callback
        start local 2 // android.os.Handler handler
         0: .line 699
            aload 0 /* this */
            aload 1 /* callback */
            aload 2 /* handler */
            invokevirtual android.content.pm.PackageInstaller.registerSessionCallback:(Landroid/content/pm/PackageInstaller$SessionCallback;Landroid/os/Handler;)V
         1: .line 700
            return
        end local 2 // android.os.Handler handler
        end local 1 // android.content.pm.PackageInstaller$SessionCallback callback
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Landroid/content/pm/PackageInstaller;
            0    2     1  callback  Landroid/content/pm/PackageInstaller$SessionCallback;
            0    2     2   handler  Landroid/os/Handler;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      callback  
      handler   

  public void registerSessionCallback(android.content.pm.PackageInstaller$SessionCallback, android.os.Handler);
    descriptor: (Landroid/content/pm/PackageInstaller$SessionCallback;Landroid/os/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // android.content.pm.PackageInstaller$SessionCallback callback
        start local 2 // android.os.Handler handler
         0: .line 710
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mDelegates:Ljava/util/ArrayList;
            dup
            astore 3
            monitorenter
         1: .line 711
            new android.content.pm.PackageInstaller$SessionCallbackDelegate
            dup
            aload 1 /* callback */
         2: .line 712
            aload 2 /* handler */
            invokevirtual android.os.Handler.getLooper:()Landroid/os/Looper;
         3: .line 711
            invokespecial android.content.pm.PackageInstaller$SessionCallbackDelegate.<init>:(Landroid/content/pm/PackageInstaller$SessionCallback;Landroid/os/Looper;)V
            astore 4 /* delegate */
        start local 4 // android.content.pm.PackageInstaller$SessionCallbackDelegate delegate
         4: .line 714
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mInstaller:Landroid/content/pm/IPackageInstaller;
            aload 4 /* delegate */
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mUserId:I
            invokeinterface android.content.pm.IPackageInstaller.registerCallback:(Landroid/content/pm/IPackageInstallerCallback;I)V
         5: .line 715
            goto 8
      StackMap locals: android.content.pm.PackageInstaller android.content.pm.PackageInstaller$SessionCallback android.os.Handler java.util.ArrayList android.content.pm.PackageInstaller$SessionCallbackDelegate
      StackMap stack: android.os.RemoteException
         6: astore 5 /* e */
        start local 5 // android.os.RemoteException e
         7: .line 716
            aload 5 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 5 // android.os.RemoteException e
         8: .line 718
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mDelegates:Ljava/util/ArrayList;
            aload 4 /* delegate */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // android.content.pm.PackageInstaller$SessionCallbackDelegate delegate
         9: .line 710
            aload 3
            monitorexit
        10: goto 13
      StackMap locals: android.content.pm.PackageInstaller android.content.pm.PackageInstaller$SessionCallback android.os.Handler java.util.ArrayList
      StackMap stack: java.lang.Throwable
        11: aload 3
            monitorexit
        12: athrow
        13: .line 720
      StackMap locals:
      StackMap stack:
            return
        end local 2 // android.os.Handler handler
        end local 1 // android.content.pm.PackageInstaller$SessionCallback callback
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0      this  Landroid/content/pm/PackageInstaller;
            0   14     1  callback  Landroid/content/pm/PackageInstaller$SessionCallback;
            0   14     2   handler  Landroid/os/Handler;
            4    9     4  delegate  Landroid/content/pm/PackageInstaller$SessionCallbackDelegate;
            7    8     5         e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           4     5       6  Class android.os.RemoteException
           1    10      11  any
          11    12      11  any
    MethodParameters:
          Name  Flags
      callback  
      handler   

  public void removeSessionCallback(android.content.pm.PackageInstaller$SessionCallback);
    descriptor: (Landroid/content/pm/PackageInstaller$SessionCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // android.content.pm.PackageInstaller$SessionCallback callback
         0: .line 725
            aload 0 /* this */
            aload 1 /* callback */
            invokevirtual android.content.pm.PackageInstaller.unregisterSessionCallback:(Landroid/content/pm/PackageInstaller$SessionCallback;)V
         1: .line 726
            return
        end local 1 // android.content.pm.PackageInstaller$SessionCallback callback
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Landroid/content/pm/PackageInstaller;
            0    2     1  callback  Landroid/content/pm/PackageInstaller$SessionCallback;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
          Name  Flags
      callback  

  public void unregisterSessionCallback(android.content.pm.PackageInstaller$SessionCallback);
    descriptor: (Landroid/content/pm/PackageInstaller$SessionCallback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // android.content.pm.PackageInstaller this
        start local 1 // android.content.pm.PackageInstaller$SessionCallback callback
         0: .line 732
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mDelegates:Ljava/util/ArrayList;
            dup
            astore 2
            monitorenter
         1: .line 733
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mDelegates:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 3 /* i */
        start local 3 // java.util.Iterator i
         2: goto 10
         3: .line 734
      StackMap locals: java.util.ArrayList java.util.Iterator
      StackMap stack:
            aload 3 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast android.content.pm.PackageInstaller$SessionCallbackDelegate
            astore 4 /* delegate */
        start local 4 // android.content.pm.PackageInstaller$SessionCallbackDelegate delegate
         4: .line 735
            aload 4 /* delegate */
            getfield android.content.pm.PackageInstaller$SessionCallbackDelegate.mCallback:Landroid/content/pm/PackageInstaller$SessionCallback;
            aload 1 /* callback */
            if_acmpne 10
         5: .line 737
            aload 0 /* this */
            getfield android.content.pm.PackageInstaller.mInstaller:Landroid/content/pm/IPackageInstaller;
            aload 4 /* delegate */
            invokeinterface android.content.pm.IPackageInstaller.unregisterCallback:(Landroid/content/pm/IPackageInstallerCallback;)V
         6: .line 738
            goto 9
      StackMap locals: android.content.pm.PackageInstaller android.content.pm.PackageInstaller$SessionCallback java.util.ArrayList java.util.Iterator android.content.pm.PackageInstaller$SessionCallbackDelegate
      StackMap stack: android.os.RemoteException
         7: astore 5 /* e */
        start local 5 // android.os.RemoteException e
         8: .line 739
            aload 5 /* e */
            invokevirtual android.os.RemoteException.rethrowFromSystemServer:()Ljava/lang/RuntimeException;
            athrow
        end local 5 // android.os.RemoteException e
         9: .line 741
      StackMap locals:
      StackMap stack:
            aload 3 /* i */
            invokeinterface java.util.Iterator.remove:()V
        end local 4 // android.content.pm.PackageInstaller$SessionCallbackDelegate delegate
        10: .line 733
      StackMap locals:
      StackMap stack:
            aload 3 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        end local 3 // java.util.Iterator i
        11: .line 732
            aload 2
            monitorexit
        12: goto 15
      StackMap locals: android.content.pm.PackageInstaller android.content.pm.PackageInstaller$SessionCallback java.util.ArrayList
      StackMap stack: java.lang.Throwable
        13: aload 2
            monitorexit
        14: athrow
        15: .line 745
      StackMap locals:
      StackMap stack:
            return
        end local 1 // android.content.pm.PackageInstaller$SessionCallback callback
        end local 0 // android.content.pm.PackageInstaller this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Landroid/content/pm/PackageInstaller;
            0   16     1  callback  Landroid/content/pm/PackageInstaller$SessionCallback;
            2   11     3         i  Ljava/util/Iterator<Landroid/content/pm/PackageInstaller$SessionCallbackDelegate;>;
            4   10     4  delegate  Landroid/content/pm/PackageInstaller$SessionCallbackDelegate;
            8    9     5         e  Landroid/os/RemoteException;
      Exception table:
        from    to  target  type
           5     6       7  Class android.os.RemoteException
           1    12      13  any
          13    14      13  any
    MethodParameters:
          Name  Flags
      callback  
}
SourceFile: "PackageInstaller.java"
NestMembers:
  android.content.pm.PackageInstaller$Session  android.content.pm.PackageInstaller$SessionCallback  android.content.pm.PackageInstaller$SessionCallbackDelegate  android.content.pm.PackageInstaller$SessionInfo  android.content.pm.PackageInstaller$SessionInfo$1  android.content.pm.PackageInstaller$SessionParams  android.content.pm.PackageInstaller$SessionParams$1
InnerClasses:
  public Session = android.content.pm.PackageInstaller$Session of android.content.pm.PackageInstaller
  public abstract SessionCallback = android.content.pm.PackageInstaller$SessionCallback of android.content.pm.PackageInstaller
  private SessionCallbackDelegate = android.content.pm.PackageInstaller$SessionCallbackDelegate of android.content.pm.PackageInstaller
  public SessionInfo = android.content.pm.PackageInstaller$SessionInfo of android.content.pm.PackageInstaller
  public SessionParams = android.content.pm.PackageInstaller$SessionParams of android.content.pm.PackageInstaller