diff --git a/packages/react-native-reanimated/android/build.gradle b/packages/react-native-reanimated/android/build.gradle index 25fdd37c8a42..73f92a4a71bb 100644 --- a/packages/react-native-reanimated/android/build.gradle +++ b/packages/react-native-reanimated/android/build.gradle @@ -323,4 +323,19 @@ dependencies { } } +if (tasks.findByName("prepareKotlinBuildScriptModel") == null) { + task prepareKotlinBuildScriptModel { + // This task is run during Gradle Sync in Android Studio. + } +} + +// This fixes linking errors due to undefined symbols from libworklets.so. +// During Gradle Sync, Android Gradle Plugin runs Prefab and treats worklets +// like a header-only library. During build, config files are not regenerated +// because the cache key does not change and AGP thinks that they are up-to-date. +afterEvaluate { + prepareKotlinBuildScriptModel.dependsOn(":react-native-worklets:prefabDebugPackage") + prepareKotlinBuildScriptModel.dependsOn(":react-native-worklets:prefabReleasePackage") +} + preBuild.dependsOn(prepareReanimatedHeadersForPrefabs)