diff --git a/media/jni/Android.bp b/media/jni/Android.bp index 2f53cbb24129a..064ac75d3a844 100644 --- a/media/jni/Android.bp +++ b/media/jni/Android.bp @@ -41,6 +41,7 @@ cc_library_shared { "libmedia_omx", "libmediametrics", "libmediadrm", + "libmediadrmmetrics_consumer", "libhwui", "libui", "liblog", diff --git a/media/jni/android_media_MediaDrm.cpp b/media/jni/android_media_MediaDrm.cpp index 3833c6bfb6764..acda18ea3dc21 100644 --- a/media/jni/android_media_MediaDrm.cpp +++ b/media/jni/android_media_MediaDrm.cpp @@ -32,7 +32,9 @@ #include #include #include +#include #include +#include #include using ::android::os::PersistableBundle; @@ -1889,7 +1891,8 @@ android_media_MediaDrm_native_getMetrics(JNIEnv *env, jobject thiz) // Retrieve current metrics snapshot from drm. PersistableBundle metrics; - status_t err = drm->getMetrics(&metrics); + sp consumer(new DrmMetricsConsumer(&metrics)); + status_t err = drm->getMetrics(consumer); if (err != OK) { ALOGE("getMetrics failed: %d", (int)err); return (jobject) NULL;