Fix incorrect area IDs and array values printed in property test

Bug: 300998563
Test: m
Change-Id: I8e4bd072d742be5697cb930500ef82adf7841de6
diff --git a/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/property/PropertyListAdapter.java b/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/property/PropertyListAdapter.java
index a743d12..29ce95e 100644
--- a/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/property/PropertyListAdapter.java
+++ b/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/property/PropertyListAdapter.java
@@ -41,6 +41,7 @@
 
 import com.google.android.car.kitchensink.R;
 
+import java.util.Arrays;
 import java.util.List;
 
 class PropertyListAdapter extends BaseAdapter implements ListAdapter {
@@ -178,12 +179,18 @@
         @Override
         public void onChangeEvent(CarPropertyValue value) {
             int propId = value.getPropertyId();
+            int areaId = value.getAreaId();
 
             mNumEvents.put(propId, mNumEvents.get(propId) + 1);
-            mTvLogEvent.append(String.format("Event %1$s: time=%2$s propId=0x%3$s areaId=0x%3$s "
-                            + "name=%4$s status=%5$s value=%6$s", mNumEvents.get(propId),
-                    value.getTimestamp(), toHexString(propId), VehiclePropertyIds.toString(propId),
-                    value.getStatus(), value.getValue()));
+
+            String valueString = value.getValue().getClass().isArray()
+                    ? Arrays.toString((Object[]) value.getValue())
+                    : value.getValue().toString();
+
+            mTvLogEvent.append(String.format("Event %1$s: time=%2$s propId=0x%3$s areaId=0x%4$s "
+                            + "name=%5$s status=%6$s value=%7$s", mNumEvents.get(propId),
+                    value.getTimestamp(), toHexString(propId), toHexString(areaId),
+                    VehiclePropertyIds.toString(propId), value.getStatus(), valueString));
             if (mPropSampleRate.contains(propId)) {
                 mTvLogEvent.append(
                         String.format(" selected sample rate=%1$s actual sample rate=%2$s\n",
diff --git a/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/property/PropertyTestFragment.java b/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/property/PropertyTestFragment.java
index dcbdd49..2de0791 100644
--- a/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/property/PropertyTestFragment.java
+++ b/tests/EmbeddedKitchenSinkApp/src/com/google/android/car/kitchensink/property/PropertyTestFragment.java
@@ -49,6 +49,7 @@
 import com.google.android.car.kitchensink.KitchenSinkActivity;
 import com.google.android.car.kitchensink.R;
 
+import java.util.Arrays;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -285,8 +286,11 @@
                     + "\n[1]=" + (Long) ticks[1] + " [2]=" + (Long) ticks[2]
                     + "\n[3]=" + (Long) ticks[3] + " [4]=" + (Long) ticks[4]);
         } else {
+            String valueString = value.getClass().isArray()
+                    ? Arrays.toString((Object[]) value)
+                    : value.toString();
             mGetValue.setText("Timestamp=" + timestamp
-                    + "\nvalue=" + value
+                    + "\nvalue=" + valueString
                     + "\nread=" + mMgr.getReadPermission(propId)
                     + "\nwrite=" + mMgr.getWritePermission(propId));
         }