diff options
| author | Suprabh Shukla <suprabh@google.com> | 2018-04-10 17:07:32 -0700 |
|---|---|---|
| committer | Suprabh Shukla <suprabh@google.com> | 2018-04-10 21:54:02 -0700 |
| commit | c401f155f052171fdb527e03dbba047e95a4d332 (patch) | |
| tree | 7affc7dd348aecaeae437fcb32b7cffb72fe0a64 /core/java | |
| parent | 65317bac02e993d1313a1958a8497ff5f2a2ecd5 (diff) | |
Updating strings for activity interceptor dialog
Updated to more descriptive title and button text.
The default message dialog will also show the suspending app name.
Test: atest \
com.android.server.pm.SuspendPackagesTest#testInterceptorActivity
Bug: 75332201
Change-Id: Ica77fb04874a8e32fe0d82ac27a9babd3b186f8d
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/com/android/internal/app/SuspendedAppActivity.java | 36 |
1 files changed, 28 insertions, 8 deletions
diff --git a/core/java/com/android/internal/app/SuspendedAppActivity.java b/core/java/com/android/internal/app/SuspendedAppActivity.java index 322c87619342..25af3557e354 100644 --- a/core/java/com/android/internal/app/SuspendedAppActivity.java +++ b/core/java/com/android/internal/app/SuspendedAppActivity.java @@ -19,10 +19,10 @@ package com.android.internal.app; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.Intent; +import android.content.pm.PackageManager; import android.os.Bundle; import android.os.UserHandle; import android.util.Slog; -import android.view.Window; import android.view.WindowManager; import com.android.internal.R; @@ -31,6 +31,10 @@ public class SuspendedAppActivity extends AlertActivity implements DialogInterface.OnClickListener { private static final String TAG = "SuspendedAppActivity"; + public static final String EXTRA_SUSPENDED_PACKAGE = + "SuspendedAppActivity.extra.SUSPENDED_PACKAGE"; + public static final String EXTRA_SUSPENDING_PACKAGE = + "SuspendedAppActivity.extra.SUSPENDING_PACKAGE"; public static final String EXTRA_DIALOG_MESSAGE = "SuspendedAppActivity.extra.DIALOG_MESSAGE"; public static final String EXTRA_MORE_DETAILS_INTENT = "SuspendedAppActivity.extra.MORE_DETAILS_INTENT"; @@ -38,10 +42,19 @@ public class SuspendedAppActivity extends AlertActivity private Intent mMoreDetailsIntent; private int mUserId; + private CharSequence getAppLabel(String packageName) { + final PackageManager pm = getPackageManager(); + try { + return pm.getApplicationInfoAsUser(packageName, 0, mUserId).loadLabel(pm); + } catch (PackageManager.NameNotFoundException ne) { + Slog.e(TAG, "Package " + packageName + " not found", ne); + } + return packageName; + } + @Override public void onCreate(Bundle icicle) { - Window window = getWindow(); - window.setType(WindowManager.LayoutParams.TYPE_SYSTEM_DIALOG); + getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_DIALOG); super.onCreate(icicle); final Intent intent = getIntent(); @@ -52,15 +65,22 @@ public class SuspendedAppActivity extends AlertActivity finish(); return; } - String dialogMessage = intent.getStringExtra(EXTRA_DIALOG_MESSAGE); - if (dialogMessage == null) { - dialogMessage = getString(R.string.app_suspended_default_message); + final String suppliedMessage = intent.getStringExtra(EXTRA_DIALOG_MESSAGE); + final CharSequence suspendedAppLabel = getAppLabel( + intent.getStringExtra(EXTRA_SUSPENDED_PACKAGE)); + final CharSequence dialogMessage; + if (suppliedMessage == null) { + dialogMessage = getString(R.string.app_suspended_default_message, + suspendedAppLabel, + getAppLabel(intent.getStringExtra(EXTRA_SUSPENDING_PACKAGE))); + } else { + dialogMessage = String.format(getResources().getConfiguration().getLocales().get(0), + suppliedMessage, suspendedAppLabel); } final AlertController.AlertParams ap = mAlertParams; ap.mTitle = getString(R.string.app_suspended_title); - ap.mMessage = String.format(getResources().getConfiguration().getLocales().get(0), - dialogMessage, intent.getStringExtra(Intent.EXTRA_PACKAGE_NAME)); + ap.mMessage = dialogMessage; ap.mPositiveButtonText = getString(android.R.string.ok); if (mMoreDetailsIntent != null) { ap.mNeutralButtonText = getString(R.string.app_suspended_more_details); |
