summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Sudheer Shanka <sudheersai@google.com> 2023-09-08 10:05:03 +0000
committer Sudheer Shanka <sudheersai@google.com> 2023-09-08 10:05:03 +0000
commit2841f107e08cdff5d9b43f63d6c6bbd76a2235e7 (patch)
treea99664b6289be14563297a4f56adb968f6396837
parent7f170baed8915a6cabcdb0ddd3626ff3226d9ccd (diff)
Add a hidden API to query quarantine state.
Bug: 297934650 Test: manual Change-Id: Ic1f295e61cdbc2c51d04c998c08d7bd4c7cb9aae
-rw-r--r--core/java/android/app/ApplicationPackageManager.java11
-rw-r--r--core/java/android/content/pm/PackageManager.java12
2 files changed, 23 insertions, 0 deletions
diff --git a/core/java/android/app/ApplicationPackageManager.java b/core/java/android/app/ApplicationPackageManager.java
index fcd13b840cb1..7b128f53857f 100644
--- a/core/java/android/app/ApplicationPackageManager.java
+++ b/core/java/android/app/ApplicationPackageManager.java
@@ -2945,6 +2945,17 @@ public class ApplicationPackageManager extends PackageManager {
return isPackageSuspendedForUser(mContext.getOpPackageName(), getUserId());
}
+ @Override
+ public boolean isPackageQuarantined(@NonNull String packageName) throws NameNotFoundException {
+ try {
+ return mPM.isPackageQuarantinedForUser(packageName, getUserId());
+ } catch (IllegalArgumentException ie) {
+ throw new NameNotFoundException(packageName);
+ } catch (RemoteException e) {
+ throw e.rethrowFromSystemServer();
+ }
+ }
+
/** @hide */
@Override
public void setApplicationCategoryHint(String packageName, int categoryHint) {
diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java
index 9a53a2a60076..2980134f3fb4 100644
--- a/core/java/android/content/pm/PackageManager.java
+++ b/core/java/android/content/pm/PackageManager.java
@@ -9860,6 +9860,18 @@ public abstract class PackageManager {
}
/**
+ * Query if an app is currently quarantined.
+ *
+ * @return {@code true} if the given package is quarantined, {@code false} otherwise
+ * @throws NameNotFoundException if the package could not be found.
+ *
+ * @hide
+ */
+ public boolean isPackageQuarantined(@NonNull String packageName) throws NameNotFoundException {
+ throw new UnsupportedOperationException("isPackageQuarantined not implemented");
+ }
+
+ /**
* Provide a hint of what the {@link ApplicationInfo#category} value should
* be for the given package.
* <p>