diff --git a/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp b/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp index 631d20ee8cd..d1781bda770 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp +++ b/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp @@ -462,6 +462,9 @@ void Binding::installFabricUIManager( jni::alias_ref reactNativeConfig) { SystraceSection s("FabricUIManagerBinding::installFabricUIManager"); + static const auto reactFeatureFlagsJavaDescriptor = + jni::findClassStatic(Binding::ReactFeatureFlagsJavaDescriptor); + std::shared_ptr config = std::make_shared(reactNativeConfig); @@ -530,10 +533,14 @@ void Binding::installFabricUIManager( // Keep reference to config object and cache some feature flags here reactNativeConfig_ = config; + static const auto mapBufferSerializationEnabledField = + reactFeatureFlagsJavaDescriptor->getStaticField( + "mapBufferSerializationEnabled"); + bool mapBufferSerializationEnabled = + reactFeatureFlagsJavaDescriptor->getStaticFieldValue( + mapBufferSerializationEnabledField); contextContainer->insert( - "MapBufferSerializationEnabled", - reactNativeConfig_->getBool( - "react_fabric:enable_mapbuffer_serialization_android")); + "MapBufferSerializationEnabled", mapBufferSerializationEnabled); disablePreallocateViews_ = reactNativeConfig_->getBool( "react_fabric:disabled_view_preallocation_android"); diff --git a/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h b/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h index b16bd9dc636..df0aeeb45aa 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h +++ b/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h @@ -76,6 +76,9 @@ class Binding : public jni::HybridClass, constexpr static auto UIManagerJavaDescriptor = "com/facebook/react/fabric/FabricUIManager"; + constexpr static auto ReactFeatureFlagsJavaDescriptor = + "com/facebook/react/config/ReactFeatureFlags"; + static void registerNatives(); private: