diff options
author | Nate Myren <ntmyren@google.com> | 2023-04-27 20:07:17 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2023-04-27 20:07:17 +0000 |
commit | b18beda6c77eb2b1e2437db314a8f99addf1e89a (patch) | |
tree | d39e13460ae3f3e01a4ebaee973f37ad58aa86b2 /PermissionController/src/com/android/permissioncontroller/permission/service | |
parent | ddb094c54794973d4ec42a406956c77df7335df3 (diff) | |
parent | 31f59231a7b86e1f7a0c276b73f32d8cfe348efd (diff) | |
download | Permission-b18beda6c77eb2b1e2437db314a8f99addf1e89a.tar.gz |
Merge "Update text and icon of privacy source notifications" into udc-dev
Diffstat (limited to 'PermissionController/src/com/android/permissioncontroller/permission/service')
2 files changed, 20 insertions, 33 deletions
diff --git a/PermissionController/src/com/android/permissioncontroller/permission/service/LocationAccessCheck.java b/PermissionController/src/com/android/permissioncontroller/permission/service/LocationAccessCheck.java index 6af03ebfe..e21be6a05 100644 --- a/PermissionController/src/com/android/permissioncontroller/permission/service/LocationAccessCheck.java +++ b/PermissionController/src/com/android/permissioncontroller/permission/service/LocationAccessCheck.java @@ -94,6 +94,7 @@ import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.drawable.Drawable; +import android.graphics.drawable.Icon; import android.location.LocationManager; import android.net.Uri; import android.os.AsyncTask; @@ -109,7 +110,6 @@ import android.safetycenter.SafetySourceData; import android.safetycenter.SafetySourceIssue; import android.safetycenter.SafetySourceIssue.Action; import android.service.notification.StatusBarNotification; -import android.text.Html; import android.text.TextUtils; import android.util.ArrayMap; import android.util.ArraySet; @@ -672,20 +672,16 @@ public class LocationAccessCheck { R.string.background_location_access_reminder_notification_content); CharSequence appLabel = appName; - int smallIconResId; - int colorResId = android.R.color.system_notification_accent_color; + Icon smallIcon; + int color = mContext.getColor(android.R.color.system_notification_accent_color); if (safetyCenterBgLocationReminderEnabled) { - if (KotlinUtils.INSTANCE.shouldShowSafetyProtectionResources(mContext)) { - appLabel = Html.fromHtml( - mContext.getString(android.R.string.safety_protection_display_text), 0); - smallIconResId = android.R.drawable.ic_safety_protection; - colorResId = R.color.safety_center_info; - } else { - appLabel = mContext.getString(R.string.safety_center_notification_app_label); - smallIconResId = R.drawable.ic_settings_notification; - } + KotlinUtils.NotificationResources notifRes = + KotlinUtils.INSTANCE.getSafetyCenterNotificationResources(mContext); + appLabel = notifRes.getAppLabel(); + smallIcon = notifRes.getSmallIcon(); + color = notifRes.getColor(); } else { - smallIconResId = R.drawable.ic_pin_drop; + smallIcon = Icon.createWithResource(mContext, R.drawable.ic_pin_drop); } Notification.Builder b = (new Notification.Builder(mContext, @@ -694,8 +690,8 @@ public class LocationAccessCheck { .setContentTitle(notificationTitle) .setContentText(notificationContent) .setStyle(new Notification.BigTextStyle().bigText(notificationContent)) - .setSmallIcon(smallIconResId) - .setColor(mContext.getColor(colorResId)) + .setSmallIcon(smallIcon) + .setColor(color) .setDeleteIntent(createNotificationDismissIntent(pkgName, sessionId, uid)) .setContentIntent(createNotificationClickIntent(pkgName, user, sessionId, uid)) .setAutoCancel(true); diff --git a/PermissionController/src/com/android/permissioncontroller/permission/service/v34/SafetyLabelChangesJobService.kt b/PermissionController/src/com/android/permissioncontroller/permission/service/v34/SafetyLabelChangesJobService.kt index 17c59a19a..98c5fc975 100644 --- a/PermissionController/src/com/android/permissioncontroller/permission/service/v34/SafetyLabelChangesJobService.kt +++ b/PermissionController/src/com/android/permissioncontroller/permission/service/v34/SafetyLabelChangesJobService.kt @@ -41,6 +41,7 @@ import android.provider.DeviceConfig import android.util.Log import androidx.annotation.RequiresApi import androidx.core.app.NotificationCompat +import androidx.core.graphics.drawable.IconCompat import com.android.permission.safetylabel.DataCategoryConstants.CATEGORY_LOCATION import com.android.permission.safetylabel.SafetyLabel as AppMetadataSafetyLabel import com.android.permissioncontroller.Constants.EXTRA_SESSION_ID @@ -64,7 +65,6 @@ import com.android.permissioncontroller.permission.model.livedatatypes.AppPermGr import com.android.permissioncontroller.permission.model.livedatatypes.AppPermGroupUiInfo.PermGrantState.PERMS_ALLOWED_FOREGROUND_ONLY import com.android.permissioncontroller.permission.model.v34.AppDataSharingUpdate import com.android.permissioncontroller.permission.utils.KotlinUtils -import com.android.permissioncontroller.permission.utils.Utils import com.android.permissioncontroller.permission.utils.Utils.getSystemServiceSafe import com.android.permissioncontroller.safetylabel.AppsSafetyLabelHistory import com.android.permissioncontroller.safetylabel.AppsSafetyLabelHistory.AppInfo @@ -532,11 +532,15 @@ class SafetyLabelChangesJobService : JobService() { val notificationManager = getSystemServiceSafe(context, NotificationManager::class.java) createNotificationChannel(context, notificationManager) + val (appLabel, smallIcon, color) = KotlinUtils.getSafetyCenterNotificationResources(this) + val smallIconCompat = IconCompat.createFromIcon(smallIcon) + ?: IconCompat.createWithResource(this, R.drawable.ic_info) val title = context.getString(R.string.safety_label_changes_notification_title) val text = context.getString(R.string.safety_label_changes_notification_desc) var notificationBuilder = NotificationCompat.Builder(context, PERMISSION_REMINDER_CHANNEL_ID) - .setSmallIcon(R.drawable.ic_info) + .setColor(color) + .setSmallIcon(smallIconCompat) .setContentTitle(title) .setContentText(text) .setPriority(NotificationCompat.PRIORITY_DEFAULT) @@ -551,22 +555,9 @@ class SafetyLabelChangesJobService : JobService() { numberOfAppUpdates ) ) - - val settingsAppLabel = - Utils.getSettingsLabelForNotifications(applicationContext.packageManager) - if (settingsAppLabel != null) { - notificationBuilder = - notificationBuilder - .setSmallIcon(R.drawable.ic_settings_24dp) - .addExtras( - Bundle().apply { - putString( - Notification.EXTRA_SUBSTITUTE_APP_NAME, - settingsAppLabel.toString() - ) - } - ) - } + notificationBuilder.addExtras( + Bundle().apply { putString(Notification.EXTRA_SUBSTITUTE_APP_NAME, appLabel) } + ) notificationManager.notify( SAFETY_LABEL_CHANGES_NOTIFICATION_ID, |