summaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
authorRobert Horvath <robhor@google.com>2020-05-13 17:11:35 +0200
committerRobert Horvath <robhor@google.com>2020-05-14 11:26:00 +0200
commit74cb65d47b1c93f38742b190026d8c5fa2541de8 (patch)
treec45e98e7f8b8888658a589b1ac4e808862e2cf8a /java
parentf3c76c7ec86e80fc965818cd91ed853bbb1cd8b0 (diff)
downloadtvsystem-74cb65d47b1c93f38742b190026d8c5fa2541de8.tar.gz
Add PackageInstaller#uninstallExistingPackage API to TvSystemandroid11-dev
To be used for profile management applications. Forwards calls to the hidden system API. Bug: 149465312 Test: m Change-Id: I3148a46fe89756b8800bccf2e78c3ae4be5fca5f
Diffstat (limited to 'java')
-rw-r--r--java/com/android/libraries/tv/tvsystem/pm/TvPackageInstaller.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/java/com/android/libraries/tv/tvsystem/pm/TvPackageInstaller.java b/java/com/android/libraries/tv/tvsystem/pm/TvPackageInstaller.java
new file mode 100644
index 0000000..8cd21ec
--- /dev/null
+++ b/java/com/android/libraries/tv/tvsystem/pm/TvPackageInstaller.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright (C) 2020 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.libraries.tv.tvsystem.pm;
+
+import android.Manifest;
+import android.annotation.NonNull;
+import android.annotation.RequiresPermission;
+import android.content.IntentSender;
+import android.content.pm.PackageInstaller;
+import android.content.pm.PackageManager;
+
+public final class TvPackageInstaller {
+ private final PackageInstaller mPackageInstaller;
+
+ public TvPackageInstaller(PackageManager packageManager) {
+ mPackageInstaller = packageManager.getPackageInstaller();
+ }
+
+ @RequiresPermission(Manifest.permission.DELETE_PACKAGES)
+ public void uninstallExistingPackage(@NonNull String packageName, IntentSender statusReceiver) {
+ mPackageInstaller.uninstallExistingPackage(packageName, statusReceiver);
+ }
+}