Revert "Hash ICC ID used in the notification tag for voicemail notifications." am: 6f32f84a36
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Dialer/+/16222616
Change-Id: I5c330dedbaa0112ab813c5276d274516e8fa549d
diff --git a/java/com/android/dialer/app/calllog/LegacyVoicemailNotifier.java b/java/com/android/dialer/app/calllog/LegacyVoicemailNotifier.java
index 625215e..31e9edc 100644
--- a/java/com/android/dialer/app/calllog/LegacyVoicemailNotifier.java
+++ b/java/com/android/dialer/app/calllog/LegacyVoicemailNotifier.java
@@ -36,7 +36,6 @@
import com.android.dialer.location.GeoUtil;
import com.android.dialer.notification.DialerNotificationManager;
import com.android.dialer.notification.NotificationChannelManager;
-import com.android.dialer.notification.VoicemailChannelUtils;
import com.android.dialer.phonenumberutil.PhoneNumberHelper;
import com.android.dialer.telecom.TelecomUtil;
import com.android.dialer.theme.base.ThemeComponent;
@@ -182,8 +181,7 @@
if (context.getSystemService(TelephonyManager.class).getPhoneCount() <= 1) {
return NOTIFICATION_TAG;
}
- return NOTIFICATION_TAG_PREFIX
- + VoicemailChannelUtils.getHashedPhoneAccountId(phoneAccountHandle.getId());
+ return NOTIFICATION_TAG_PREFIX + phoneAccountHandle.getId();
}
private LegacyVoicemailNotifier() {}
diff --git a/java/com/android/dialer/notification/VoicemailChannelUtils.java b/java/com/android/dialer/notification/VoicemailChannelUtils.java
index 83bda0f..ddc0f77 100644
--- a/java/com/android/dialer/notification/VoicemailChannelUtils.java
+++ b/java/com/android/dialer/notification/VoicemailChannelUtils.java
@@ -16,8 +16,6 @@
package com.android.dialer.notification;
-import static java.nio.charset.StandardCharsets.UTF_8;
-
import android.Manifest.permission;
import android.annotation.TargetApi;
import android.app.NotificationChannel;
@@ -40,35 +38,15 @@
import com.android.dialer.common.Assert;
import com.android.dialer.common.LogUtil;
import com.android.dialer.util.PermissionsUtil;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
/** Utilities for working with voicemail channels. */
@TargetApi(VERSION_CODES.O)
-public final class VoicemailChannelUtils {
+/* package */ final class VoicemailChannelUtils {
@VisibleForTesting static final String GLOBAL_VOICEMAIL_CHANNEL_ID = "phone_voicemail";
private static final String PER_ACCOUNT_VOICEMAIL_CHANNEL_ID_PREFIX = "phone_voicemail_account_";
- private static final char[] hexDigits = "0123456789abcdef".toCharArray();
-
- /**
- * Returns a String representation of the hashed value of the PhoneAccountHandle's id (the
- * Sim ICC ID).
- * In case it fails to hash the id it will return an empty string.
- */
- public static String getHashedPhoneAccountId(@NonNull PhoneAccountHandle handle) {
- byte[] handleBytes = handle.getId().getBytes(UTF_8);
- try {
- byte[] hashedBytes = MessageDigest.getInstance("SHA-256").digest(handleBytes);
- return byteArrayToHexString(hashedBytes);
- } catch (NoSuchAlgorithmException e) {
- LogUtil.e("VoicemailChannelUtils.getHashedPhoneAccountId",
- "NoSuchAlgorithmException throw! Returning empty string!");
- return "";
- }
- }
@SuppressWarnings("MissingPermission") // isSingleSimDevice() returns true if no permission
static Set<String> getAllChannelIds(@NonNull Context context) {
@@ -146,17 +124,7 @@
private static String getChannelIdForAccount(@NonNull PhoneAccountHandle handle) {
Assert.isNotNull(handle);
- return PER_ACCOUNT_VOICEMAIL_CHANNEL_ID_PREFIX
- + ":"
- + getHashedPhoneAccountId(handle);
- }
-
- private static String byteArrayToHexString(byte[] bytes) {
- StringBuilder sb = new StringBuilder(2 * bytes.length);
- for (byte b : bytes) {
- sb.append(hexDigits[(b >> 4) & 0xf]).append(hexDigits[b & 0xf]);
- }
- return sb.toString();
+ return PER_ACCOUNT_VOICEMAIL_CHANNEL_ID_PREFIX + ":" + handle.getId();
}
/**