Merge "codecserviceregistrant: don't attempt to register AIDL service pre-V" into main
diff --git a/media/module/codecserviceregistrant/CodecServiceRegistrant.cpp b/media/module/codecserviceregistrant/CodecServiceRegistrant.cpp
index 41f3d74..65d537b 100644
--- a/media/module/codecserviceregistrant/CodecServiceRegistrant.cpp
+++ b/media/module/codecserviceregistrant/CodecServiceRegistrant.cpp
@@ -737,6 +737,12 @@
     using namespace ::android::hardware::media::c2;
 
     int platformVersion = android_get_device_api_level();
+    // STOPSHIP: Remove code name checking once platform version bumps up to 35.
+    std::string codeName =
+        android::base::GetProperty("ro.build.version.codename", "");
+    if (codeName == "VanillaIceCream") {
+        platformVersion = __ANDROID_API_V__;
+    }
 
     android::sp<V1_0::IComponentStore> hidlStore;
     std::shared_ptr<c2_aidl::IComponentStore> aidlStore;
@@ -797,17 +803,19 @@
         }
     }
 
-    if (!aidlStore) {
-        aidlStore = ::ndk::SharedRefBase::make<c2_aidl::utils::ComponentStore>(
-                std::make_shared<H2C2ComponentStore>(nullptr));
-    }
-    const std::string serviceName =
-        std::string(c2_aidl::IComponentStore::descriptor) + "/software";
-    binder_exception_t ex = AServiceManager_addService(
-            aidlStore->asBinder().get(), serviceName.c_str());
-    if (ex != EX_NONE) {
-        LOG(ERROR) << "Cannot register software Codec2 AIDL service.";
-        return;
+    if (platformVersion >= __ANDROID_API_V__) {
+        if (!aidlStore) {
+            aidlStore = ::ndk::SharedRefBase::make<c2_aidl::utils::ComponentStore>(
+                    std::make_shared<H2C2ComponentStore>(nullptr));
+        }
+        const std::string serviceName =
+            std::string(c2_aidl::IComponentStore::descriptor) + "/software";
+        binder_exception_t ex = AServiceManager_addService(
+                aidlStore->asBinder().get(), serviceName.c_str());
+        if (ex != EX_NONE) {
+            LOG(ERROR) << "Cannot register software Codec2 AIDL service.";
+            return;
+        }
     }
 
     if (!hidlStore) {