convert ResourceManager usage in MediaCodec to ndk aidl

bug: 142396029
test: ResourceManagerService_test, DrmSessionManager_test,
CTS ResourceManagerTest, manual test battery stats and cpuset

Change-Id: I77f5de54a83b17d906798659e1b3281c90cde92c
diff --git a/media/libmedia/Android.bp b/media/libmedia/Android.bp
index b064f08..1bd3777 100644
--- a/media/libmedia/Android.bp
+++ b/media/libmedia/Android.bp
@@ -305,6 +305,7 @@
         "libprocessgroup",
         "libutils",
         "libbinder",
+        "libbinder_ndk",
         "libsonivox",
         "libandroidicu",
         "libexpat",
@@ -327,11 +328,11 @@
 
     static_libs: [
         "libc_malloc_debug_backtrace", // for memory heap analysis
-        "resourcemanager_aidl_interface-unstable-cpp",
+        "resourcemanager_aidl_interface-ndk_platform",
     ],
 
     export_static_lib_headers: [
-        "resourcemanager_aidl_interface-unstable-cpp",
+        "resourcemanager_aidl_interface-ndk_platform",
     ],
 
     export_include_dirs: [
diff --git a/media/libmedia/MediaResource.cpp b/media/libmedia/MediaResource.cpp
index fe86d27..0936a99 100644
--- a/media/libmedia/MediaResource.cpp
+++ b/media/libmedia/MediaResource.cpp
@@ -35,7 +35,7 @@
     this->value = value;
 }
 
-MediaResource::MediaResource(Type type, const std::vector<uint8_t> &id, int64_t value) {
+MediaResource::MediaResource(Type type, const std::vector<int8_t> &id, int64_t value) {
     this->type = type;
     this->subType = SubType::kUnspecifiedSubType;
     this->id = id;
@@ -66,11 +66,11 @@
 }
 
 //static
-MediaResource MediaResource::DrmSessionResource(const std::vector<uint8_t> &id, int64_t value) {
+MediaResource MediaResource::DrmSessionResource(const std::vector<int8_t> &id, int64_t value) {
     return MediaResource(Type::kDrmSession, id, value);
 }
 
-static String8 bytesToHexString(const std::vector<uint8_t> &bytes) {
+static String8 bytesToHexString(const std::vector<int8_t> &bytes) {
     String8 str;
     for (auto &b : bytes) {
         str.appendFormat("%02x", b);
diff --git a/media/libmedia/MediaResourcePolicy.cpp b/media/libmedia/MediaResourcePolicy.cpp
index c463179..afa971d 100644
--- a/media/libmedia/MediaResourcePolicy.cpp
+++ b/media/libmedia/MediaResourcePolicy.cpp
@@ -16,20 +16,21 @@
 
 //#define LOG_NDEBUG 0
 #define LOG_TAG "MediaResourcePolicy"
-#include <utils/Log.h>
+
+#include <aidl/android/media/IResourceManagerService.h>
 #include <media/MediaResourcePolicy.h>
-#include <android/media/IResourceManagerService.h>
+#include <utils/Log.h>
 
 namespace android {
 
-using android::media::IResourceManagerService;
+using aidl::android::media::IResourceManagerService;
 //static
-const ::std::string& MediaResourcePolicy::kPolicySupportsMultipleSecureCodecs() {
-    return IResourceManagerService::kPolicySupportsMultipleSecureCodecs();
+const char* MediaResourcePolicy::kPolicySupportsMultipleSecureCodecs() {
+    return IResourceManagerService::kPolicySupportsMultipleSecureCodecs;
 }
 //static
-const ::std::string& MediaResourcePolicy::kPolicySupportsSecureWithNonSecureCodec() {
-    return IResourceManagerService::kPolicySupportsSecureWithNonSecureCodec();
+const char* MediaResourcePolicy::kPolicySupportsSecureWithNonSecureCodec() {
+    return IResourceManagerService::kPolicySupportsSecureWithNonSecureCodec;
 }
 
 MediaResourcePolicy::MediaResourcePolicy(
diff --git a/media/libmedia/include/media/MediaResource.h b/media/libmedia/include/media/MediaResource.h
index caf03b1..e7362c1 100644
--- a/media/libmedia/include/media/MediaResource.h
+++ b/media/libmedia/include/media/MediaResource.h
@@ -18,13 +18,14 @@
 #ifndef ANDROID_MEDIA_RESOURCE_H
 #define ANDROID_MEDIA_RESOURCE_H
 
-#include <android/media/MediaResourceParcel.h>
+#include <aidl/android/media/MediaResourceParcel.h>
+#include <utils/String8.h>
 
 namespace android {
 
-using android::media::MediaResourceParcel;
-using android::media::MediaResourceSubType;
-using android::media::MediaResourceType;
+using aidl::android::media::MediaResourceParcel;
+using aidl::android::media::MediaResourceSubType;
+using aidl::android::media::MediaResourceType;
 
 class MediaResource : public MediaResourceParcel {
 public:
@@ -34,13 +35,13 @@
     MediaResource() = delete;
     MediaResource(Type type, int64_t value);
     MediaResource(Type type, SubType subType, int64_t value);
-    MediaResource(Type type, const std::vector<uint8_t> &id, int64_t value);
+    MediaResource(Type type, const std::vector<int8_t> &id, int64_t value);
 
     static MediaResource CodecResource(bool secure, bool video);
     static MediaResource GraphicMemoryResource(int64_t value);
     static MediaResource CpuBoostResource();
     static MediaResource VideoBatteryResource();
-    static MediaResource DrmSessionResource(const std::vector<uint8_t> &id, int64_t value);
+    static MediaResource DrmSessionResource(const std::vector<int8_t> &id, int64_t value);
 };
 
 inline static const char *asString(MediaResource::Type i, const char *def = "??") {
diff --git a/media/libmedia/include/media/MediaResourcePolicy.h b/media/libmedia/include/media/MediaResourcePolicy.h
index 7ae1a73..052395b 100644
--- a/media/libmedia/include/media/MediaResourcePolicy.h
+++ b/media/libmedia/include/media/MediaResourcePolicy.h
@@ -18,19 +18,20 @@
 #ifndef ANDROID_MEDIA_RESOURCE_POLICY_H
 #define ANDROID_MEDIA_RESOURCE_POLICY_H
 
-#include <android/media/MediaResourcePolicyParcel.h>
+#include <aidl/android/media/MediaResourcePolicyParcel.h>
+#include <utils/String8.h>
 
 namespace android {
 
-using media::MediaResourcePolicyParcel;
+using aidl::android::media::MediaResourcePolicyParcel;
 
 class MediaResourcePolicy : public MediaResourcePolicyParcel {
 public:
     MediaResourcePolicy() = delete;
     MediaResourcePolicy(const std::string& type, const std::string& value);
 
-    static const ::std::string& kPolicySupportsMultipleSecureCodecs();
-    static const ::std::string& kPolicySupportsSecureWithNonSecureCodec();
+    static const char* kPolicySupportsMultipleSecureCodecs();
+    static const char* kPolicySupportsSecureWithNonSecureCodec();
 };
 
 String8 toString(const MediaResourcePolicyParcel &policy);