diff options
6 files changed, 22 insertions, 18 deletions
diff --git a/core/java/com/android/internal/notification/SystemNotificationChannels.java b/core/java/com/android/internal/notification/SystemNotificationChannels.java index accfc875956c..a35e42e4e140 100644 --- a/core/java/com/android/internal/notification/SystemNotificationChannels.java +++ b/core/java/com/android/internal/notification/SystemNotificationChannels.java @@ -43,7 +43,12 @@ public class SystemNotificationChannels { public static String NETWORK_ALERTS = "NETWORK_ALERTS"; public static String NETWORK_AVAILABLE = "NETWORK_AVAILABLE"; public static String VPN = "VPN"; - public static String DEVICE_ADMIN = "DEVICE_ADMIN"; + /** + * @deprecated Legacy device admin channel with low importance which is no longer used, + * Use the high importance {@link #DEVICE_ADMIN} channel instead. + */ + @Deprecated public static String DEVICE_ADMIN_DEPRECATED = "DEVICE_ADMIN"; + public static String DEVICE_ADMIN = "DEVICE_ADMIN_ALERTS"; public static String ALERTS = "ALERTS"; public static String RETAIL_MODE = "RETAIL_MODE"; public static String USB = "USB"; @@ -128,7 +133,7 @@ public class SystemNotificationChannels { final NotificationChannel deviceAdmin = new NotificationChannel( DEVICE_ADMIN, context.getString(R.string.notification_channel_device_admin), - NotificationManager.IMPORTANCE_LOW); + NotificationManager.IMPORTANCE_HIGH); channelsList.add(deviceAdmin); final NotificationChannel alertsChannel = new NotificationChannel( @@ -180,6 +185,12 @@ public class SystemNotificationChannels { nm.createNotificationChannels(channelsList); } + /** Remove notification channels which are no longer used */ + public static void removeDeprecated(Context context) { + final NotificationManager nm = context.getSystemService(NotificationManager.class); + nm.deleteNotificationChannel(DEVICE_ADMIN_DEPRECATED); + } + public static void createAccountChannelForPackage(String pkg, int uid, Context context) { final INotificationManager iNotificationManager = NotificationManager.getService(); try { diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml index b07e7ef0bd05..5652c85cf28f 100644 --- a/core/res/res/values/strings.xml +++ b/core/res/res/values/strings.xml @@ -633,8 +633,8 @@ <!-- Text shown when viewing channel settings for notifications related to vpn status --> <string name="notification_channel_vpn">VPN status</string> - <!-- Text shown when viewing channel settings for notifications related to remote device administration --> - <string name="notification_channel_device_admin">Device administration</string> + <!-- Notification channel name. This channel sends high-priority alerts from the user's IT admin for key updates about the user's work device or work profile. --> + <string name="notification_channel_device_admin">Alerts from your IT admin</string> <!-- Text shown when viewing channel settings for notifications related to important alerts --> <string name="notification_channel_alerts">Alerts</string> @@ -5035,13 +5035,8 @@ <!-- Notification content shown when new SMS/MMS is received while the device is locked [CHAR LIMIT=NONE] --> <string name="new_sms_notification_content">Open SMS app to view</string> - <!-- Notification title shown when user profile is credential encrypted and requires the user to unlock before some features are usable [CHAR LIMIT=30] --> - <string name="user_encrypted_title">Some functionality may be limited</string> - <!-- Notification message shown when user profile is credential encrypted and requires the user to unlock before some features are usable [CHAR LIMIT=30] --> - <string name="user_encrypted_message">Tap to unlock</string> - <!-- Notification detail shown when user profile is credential encrypted and requires the user to unlock before some features are usable [CHAR LIMIT=30] --> - <string name="user_encrypted_detail">User data locked</string> - + <!-- Notification title shown when user profile is credential encrypted and requires the user to unlock before some features are usable [CHAR LIMIT=36] --> + <string name="profile_encrypted_title">Some functionality may be limited</string> <!-- Notification detail shown when work profile is credential encrypted and requires the user to unlock before some features are usable [CHAR LIMIT=30] --> <string name="profile_encrypted_detail">Work profile locked</string> <!-- Notification message shown when work profile is credential encrypted and requires the user to unlock before some features are usable [CHAR LIMIT=30] --> diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml index d91036a3994d..77988de771d9 100644 --- a/core/res/res/values/symbols.xml +++ b/core/res/res/values/symbols.xml @@ -3027,9 +3027,7 @@ <java-symbol type="string" name="now_string_shortest" /> <!-- Encryption notification while accounts are locked by credential encryption --> - <java-symbol type="string" name="user_encrypted_title" /> - <java-symbol type="string" name="user_encrypted_message" /> - <java-symbol type="string" name="user_encrypted_detail" /> + <java-symbol type="string" name="profile_encrypted_title" /> <java-symbol type="string" name="profile_encrypted_detail" /> <java-symbol type="string" name="profile_encrypted_message" /> <java-symbol type="drawable" name="ic_user_secure" /> diff --git a/services/core/java/com/android/server/locksettings/LockSettingsService.java b/services/core/java/com/android/server/locksettings/LockSettingsService.java index b13cd1e1f0d4..c2125b0a997d 100644 --- a/services/core/java/com/android/server/locksettings/LockSettingsService.java +++ b/services/core/java/com/android/server/locksettings/LockSettingsService.java @@ -506,7 +506,7 @@ public class LockSettingsService extends ILockSettings.Stub { private void showEncryptionNotificationForProfile(UserHandle user) { Resources r = mContext.getResources(); CharSequence title = r.getText( - com.android.internal.R.string.user_encrypted_title); + com.android.internal.R.string.profile_encrypted_title); CharSequence message = r.getText( com.android.internal.R.string.profile_encrypted_message); CharSequence detail = r.getText( @@ -534,7 +534,7 @@ public class LockSettingsService extends ILockSettings.Stub { if (!StorageManager.isFileEncryptedNativeOrEmulated()) return; Notification notification = - new Notification.Builder(mContext, SystemNotificationChannels.SECURITY) + new Notification.Builder(mContext, SystemNotificationChannels.DEVICE_ADMIN) .setSmallIcon(com.android.internal.R.drawable.ic_user_secure) .setWhen(0) .setOngoing(true) diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/RemoteBugreportUtils.java b/services/devicepolicy/java/com/android/server/devicepolicy/RemoteBugreportUtils.java index 344077cce06e..0838fbc536c1 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/RemoteBugreportUtils.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/RemoteBugreportUtils.java @@ -20,7 +20,6 @@ import android.annotation.IntDef; import android.app.Notification; import android.app.PendingIntent; import android.app.admin.DevicePolicyManager; -import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.os.UserHandle; @@ -65,7 +64,7 @@ class RemoteBugreportUtils { dialogIntent, 0, null, UserHandle.CURRENT); Notification.Builder builder = - new Notification.Builder(context, SystemNotificationChannels.DEVELOPER) + new Notification.Builder(context, SystemNotificationChannels.DEVICE_ADMIN) .setSmallIcon(com.android.internal.R.drawable.stat_sys_adb) .setOngoing(true) .setLocalOnly(true) diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java index 24540fd47e9f..8c65fa8b53bf 100644 --- a/services/java/com/android/server/SystemServer.java +++ b/services/java/com/android/server/SystemServer.java @@ -1400,6 +1400,7 @@ public final class SystemServer { traceBeginAndSlog("StartNotificationManager"); mSystemServiceManager.startService(NotificationManagerService.class); + SystemNotificationChannels.removeDeprecated(context); SystemNotificationChannels.createAll(context); notification = INotificationManager.Stub.asInterface( ServiceManager.getService(Context.NOTIFICATION_SERVICE)); |