From cc8b163dba9ea7683e515285c56e07a0f1fcb1b7 Mon Sep 17 00:00:00 2001 From: paulhu Date: Sat, 7 Nov 2020 01:00:31 +0800 Subject: [PATCH] Expose some ApplicationInfo#is* methods as in-process API Connectivity service is going to become a mainline module which will not able to access hidden APIs. But PermissionMonitor needs ApplicationInfo#is(Vendor|Oem|Product) APIs to know the package partition. Thus, expose them as in-process API to support the usage. Bug: 170593746 Test: atest FrameworksNetTests Change-Id: Ie4ffb2b47539786dd51b885ca93c8813d039c4da --- core/java/android/content/pm/ApplicationInfo.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/core/java/android/content/pm/ApplicationInfo.java b/core/java/android/content/pm/ApplicationInfo.java index 8f4fc261df37c..b2f439ae4e877 100644 --- a/core/java/android/content/pm/ApplicationInfo.java +++ b/core/java/android/content/pm/ApplicationInfo.java @@ -2101,6 +2101,7 @@ public class ApplicationInfo extends PackageItemInfo implements Parcelable { } /** @hide */ + @SystemApi(client = SystemApi.Client.SYSTEM_SERVER) public boolean isOem() { return (privateFlags & ApplicationInfo.PRIVATE_FLAG_OEM) != 0; } @@ -2148,11 +2149,13 @@ public class ApplicationInfo extends PackageItemInfo implements Parcelable { } /** @hide */ + @SystemApi(client = SystemApi.Client.SYSTEM_SERVER) public boolean isVendor() { return (privateFlags & ApplicationInfo.PRIVATE_FLAG_VENDOR) != 0; } /** @hide */ + @SystemApi(client = SystemApi.Client.SYSTEM_SERVER) public boolean isProduct() { return (privateFlags & ApplicationInfo.PRIVATE_FLAG_PRODUCT) != 0; }