From 414d9ecc2654d3acbe34b2969aa6234976164067 Mon Sep 17 00:00:00 2001 From: Alex Buynytskyy Date: Tue, 23 Feb 2021 08:10:36 -0800 Subject: [PATCH] API feedback: getVersion instead of isV2. Bug: 181015045 Fixes: 181015045 Test: atest PackageManagerShellCommandTest PackageManagerShellCommandIncrementalTest IncrementalServiceTest PackageManagerServiceTest ChecksumsTest Change-Id: I623f73b834759d9a1c599d7c7f3ff585fa75c4aa --- core/java/android/content/pm/PackageManager.java | 2 +- core/java/android/os/incremental/IncrementalManager.java | 8 +++++--- core/java/com/android/server/SystemConfig.java | 6 +++--- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index f9122b1f6c8b9..9a3fbdcea9ff9 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -3601,7 +3601,7 @@ public abstract class PackageManager { * 1 - IncFs v1, core features, no PerUid support. Optional in R. * 2 - IncFs v2, PerUid support, fs-verity support. Required in S. * - * @see IncrementalManager#isFeatureEnabled and IncrementalManager#isV2() + * @see IncrementalManager#getVersion() * @hide */ @SystemApi diff --git a/core/java/android/os/incremental/IncrementalManager.java b/core/java/android/os/incremental/IncrementalManager.java index cec6a1fb271df..592e98abae638 100644 --- a/core/java/android/os/incremental/IncrementalManager.java +++ b/core/java/android/os/incremental/IncrementalManager.java @@ -241,10 +241,12 @@ public final class IncrementalManager { } /** - * Checks if device supports V2 calls (e.g. PerUid). + * 0 - IncFs is disabled. + * 1 - IncFs v1, core features, no PerUid support. Optional in R. + * 2 - IncFs v2, PerUid support, fs-verity support. Required in S. */ - public static boolean isV2Available() { - return nativeIsV2Available(); + public static int getVersion() { + return nativeIsEnabled() ? nativeIsV2Available() ? 2 : 1 : 0; } /** diff --git a/core/java/com/android/server/SystemConfig.java b/core/java/com/android/server/SystemConfig.java index 8982519eff966..671cb8481dd97 100644 --- a/core/java/com/android/server/SystemConfig.java +++ b/core/java/com/android/server/SystemConfig.java @@ -1234,10 +1234,10 @@ public class SystemConfig { addFeature(PackageManager.FEATURE_RAM_NORMAL, 0); } - if (IncrementalManager.isFeatureEnabled()) { + final int incrementalVersion = IncrementalManager.getVersion(); + if (incrementalVersion > 0) { addFeature(PackageManager.FEATURE_INCREMENTAL_DELIVERY, 0); - addFeature(PackageManager.FEATURE_INCREMENTAL_DELIVERY_VERSION, - IncrementalManager.isV2Available() ? 2 : 1); + addFeature(PackageManager.FEATURE_INCREMENTAL_DELIVERY_VERSION, incrementalVersion); } if (PackageManager.APP_ENUMERATION_ENABLED_BY_DEFAULT) {