From e7f750d17837bad1825335afb4ab6771371c8985 Mon Sep 17 00:00:00 2001 From: Andy Hung Date: Thu, 19 Dec 2019 12:39:08 -0800 Subject: [PATCH] MediaMetrics: Use submitBuffer for more efficient logging Test: Confirm Java logging in mediametrics dumpsys Bug: 138583596 Change-Id: I6a3479552ce4fe41a6fd983dc3b8a9d88495f304 --- media/jni/android_media_MediaMetricsJNI.cpp | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/media/jni/android_media_MediaMetricsJNI.cpp b/media/jni/android_media_MediaMetricsJNI.cpp index 37aca08643b28..b82d8e2234247 100644 --- a/media/jni/android_media_MediaMetricsJNI.cpp +++ b/media/jni/android_media_MediaMetricsJNI.cpp @@ -18,6 +18,7 @@ #include #include +#include #include #include #include @@ -150,14 +151,12 @@ static jint android_media_MediaMetrics_submit_bytebuffer( return (jint)BAD_VALUE; } - // TODO: directly record item to MediaMetrics service. - mediametrics::Item item; - if (item.readFromByteString((char *)buffer, length) != NO_ERROR) { - ALOGW("%s: cannot read from byte string", __func__); - return (jint)BAD_VALUE; + sp service = mediametrics::BaseItem::getService(); + if (service == nullptr) { + ALOGW("Cannot retrieve mediametrics service"); + return (jint)NO_INIT; } - item.selfrecord(); - return (jint)NO_ERROR; + return (jint)service->submitBuffer((char *)buffer, length); } // Helper function to convert a native PersistableBundle to a Java