BluetoothMetrics: Upload readable sha256, instead of bytes

Bug: 264937355
Test: atest BluetoothInstrumentationTests
(cherry picked from https://android-review.googlesource.com/q/commit:c5a164cfbf2771d49ccfa2a501fd8e6fcc490745)
Merged-In: Ica31ffcc22d5a75aa82b9e2f91b9239d63506a40
Change-Id: Ica31ffcc22d5a75aa82b9e2f91b9239d63506a40
diff --git a/android/app/src/com/android/bluetooth/btservice/MetricsLogger.java b/android/app/src/com/android/bluetooth/btservice/MetricsLogger.java
index f7eef60..2066eb7 100644
--- a/android/app/src/com/android/bluetooth/btservice/MetricsLogger.java
+++ b/android/app/src/com/android/bluetooth/btservice/MetricsLogger.java
@@ -27,6 +27,7 @@
 
 import com.google.common.hash.BloomFilter;
 import com.google.common.hash.Funnels;
+import com.google.common.hash.Hashing;
 
 import java.io.File;
 import java.io.FileInputStream;
@@ -276,16 +277,18 @@
         if (matchedSha256 == null) {
             return false;
         }
-        statslogBluetoothDeviceNames(metricId, matchedString, matchedSha256);
+        statslogBluetoothDeviceNames(
+                metricId,
+                matchedString,
+                Hashing.sha256().hashString(matchedString, StandardCharsets.UTF_8).toString());
         return true;
     }
 
-    protected void statslogBluetoothDeviceNames(int metricId, String matchedString, byte[] sha256) {
-        String sha256String = new String(sha256);
+    protected void statslogBluetoothDeviceNames(int metricId, String matchedString, String sha256) {
         Log.d(TAG,
-                "Uploading sha256 hash of matched bluetooth device name: " + sha256String);
+                "Uploading sha256 hash of matched bluetooth device name: " + sha256);
         BluetoothStatsLog.write(
-                BluetoothStatsLog.BLUETOOTH_HASHED_DEVICE_NAME_REPORTED, metricId, sha256String);
+                BluetoothStatsLog.BLUETOOTH_HASHED_DEVICE_NAME_REPORTED, metricId, sha256);
     }
 
     protected static byte[] getSha256(String name) {
diff --git a/android/app/tests/unit/src/com/android/bluetooth/btservice/MetricsLoggerTest.java b/android/app/tests/unit/src/com/android/bluetooth/btservice/MetricsLoggerTest.java
index 800666b..f665967 100644
--- a/android/app/tests/unit/src/com/android/bluetooth/btservice/MetricsLoggerTest.java
+++ b/android/app/tests/unit/src/com/android/bluetooth/btservice/MetricsLoggerTest.java
@@ -74,7 +74,7 @@
 
         @Override
         protected void statslogBluetoothDeviceNames(
-                int metricId, String matchedString, byte[] sha256) {
+                int metricId, String matchedString, String sha256) {
             mTestableDeviceNames.merge(matchedString, 1, Integer::sum);
         }
     }