diff --git a/packages/react-native/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp b/packages/react-native/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp index 543b387b217..67716a95394 100644 --- a/packages/react-native/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp +++ b/packages/react-native/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp @@ -18,6 +18,10 @@ namespace facebook::react { std::function)> DefaultComponentsRegistry::registerComponentDescriptorsFromEntryPoint{}; +std::function)> + DefaultComponentsRegistry:: + registerCodegenComponentDescriptorsFromEntryPoint{}; + void DefaultComponentsRegistry::setRegistryRunction( jni::alias_ref, ComponentFactory* delegate) { @@ -31,6 +35,12 @@ void DefaultComponentsRegistry::setRegistryRunction( .flavor = nullptr}; auto providerRegistry = CoreComponentsRegistry::sharedProviderRegistry(); + if (registerCodegenComponentDescriptorsFromEntryPoint) { + registerCodegenComponentDescriptorsFromEntryPoint(providerRegistry); + } else { + LOG(WARNING) + << "Codegen component descriptors were not configured from JNI_OnLoad"; + } if (registerComponentDescriptorsFromEntryPoint) { registerComponentDescriptorsFromEntryPoint(providerRegistry); } else { diff --git a/packages/react-native/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.h b/packages/react-native/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.h index cf95b8709cf..9a27c7ba51a 100644 --- a/packages/react-native/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.h +++ b/packages/react-native/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.h @@ -27,6 +27,10 @@ class DefaultComponentsRegistry std::shared_ptr)> registerComponentDescriptorsFromEntryPoint; + static std::function)> + registerCodegenComponentDescriptorsFromEntryPoint; + private: static void setRegistryRunction( jni::alias_ref,