summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Sumedh Sen <sumedhsen@google.com> 2023-11-01 11:18:09 -0700
committer Sumedh Sen <sumedhsen@google.com> 2023-11-01 11:23:49 -0700
commit2e041bef81d27e2e483e0455d73bc55fe670b18b (patch)
tree7185907a884f473ce88c41f89b1f9ba3e9a361ac
parente34ebe1541dae7711fcd853a4c8eeeb6c7ba4772 (diff)
Show failure dialog when app can't be installed due to secureFRP
Instead of crashing the app due to a SecurityException, let the user know that installation failed. Bug: 308713336 Test: adb shell settings put global secure_frp_mode 1 Sideload an APK via PackageInstaller app Change-Id: I08aa3992ba94bc85d94f761b1f174fa740c2a38b
-rw-r--r--packages/PackageInstaller/src/com/android/packageinstaller/InstallInstalling.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/packages/PackageInstaller/src/com/android/packageinstaller/InstallInstalling.java b/packages/PackageInstaller/src/com/android/packageinstaller/InstallInstalling.java
index 1088acef0fb0..4992ef1e1c00 100644
--- a/packages/PackageInstaller/src/com/android/packageinstaller/InstallInstalling.java
+++ b/packages/PackageInstaller/src/com/android/packageinstaller/InstallInstalling.java
@@ -290,7 +290,14 @@ public class InstallInstalling extends AlertActivity {
broadcastIntent,
PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_MUTABLE);
- session.commit(pendingIntent.getIntentSender());
+ try {
+ session.commit(pendingIntent.getIntentSender());
+ } catch (Exception e) {
+ Log.e(LOG_TAG, "Cannot install package: ", e);
+ launchFailure(PackageInstaller.STATUS_FAILURE,
+ PackageManager.INSTALL_FAILED_INTERNAL_ERROR, null);
+ return;
+ }
mCancelButton.setEnabled(false);
setFinishOnTouchOutside(false);
} else {