Allow staging multiple session with non-overlapping packages (apk-only)

Bug: 141843321
Test: atest StagedInstallTest#testAllowNonOverlappingMultipleStagedInstall_BothSinglePackage_Apk
Test: atest StagedInstallTest#testFailOverlappingMultipleStagedInstall_BothSinglePackage_Apk
Test: atest StagedInstallTest#testFailOverlappingMultipleStagedInstall_BothSinglePackage_Apex
Test: atest StagedInstallTest#testAllowNonOverlappingMultipleStagedInstall_MultiPackageSinglePackage
Test: atest StagedInstallTest#testFailOverlappingMultipleStagedInstall_BothMultiPackage
Test: atest StagedInstallTest#testMultipleStagedInstall_ApkOnly
Test: atest RollbackManagerHostTest#testApkOnlyMultipleStagedRollback
Test: atest RollbackManagerHostTest#testApkOnlyMultipleStagedPartialRollback
Test: atest StagedInstallTest
Change-Id: Iad2e35b50fd22e207e3ad91b48a767827d8e8926
This commit is contained in:
Mohammad Samiul Islam
2019-10-09 11:29:26 +01:00
parent 7c93dc5e45
commit da00497f07
5 changed files with 169 additions and 54 deletions

View File

@@ -11509,7 +11509,8 @@ package android.content.pm {
public class PackageInstaller {
method public void abandonSession(int);
method public int createSession(@NonNull android.content.pm.PackageInstaller.SessionParams) throws java.io.IOException;
method @Nullable public android.content.pm.PackageInstaller.SessionInfo getActiveStagedSession();
method @Deprecated @Nullable public android.content.pm.PackageInstaller.SessionInfo getActiveStagedSession();
method @NonNull public java.util.List<android.content.pm.PackageInstaller.SessionInfo> getActiveStagedSessions();
method @NonNull public java.util.List<android.content.pm.PackageInstaller.SessionInfo> getAllSessions();
method @NonNull public java.util.List<android.content.pm.PackageInstaller.SessionInfo> getMySessions();
method @Nullable public android.content.pm.PackageInstaller.SessionInfo getSessionInfo(int);
@@ -11594,11 +11595,13 @@ package android.content.pm {
method @NonNull public String getStagedSessionErrorMessage();
method public long getUpdatedMillis();
method @NonNull public android.os.UserHandle getUser();
method public boolean hasParentSessionId();
method public boolean isActive();
method public boolean isCommitted();
method public boolean isMultiPackage();
method public boolean isSealed();
method public boolean isStaged();
method public boolean isStagedSessionActive();
method public boolean isStagedSessionApplied();
method public boolean isStagedSessionFailed();
method public boolean isStagedSessionReady();