From d657c97c2da09f51760b69b33ea1b64a051d7086 Mon Sep 17 00:00:00 2001 From: Christoph Purrer Date: Tue, 10 Oct 2023 09:39:39 -0700 Subject: [PATCH] Add rn-tester Android BUCK configuration (#39987) Summary: Changelog: [Internal] Reviewed By: fkgozali Differential Revision: D49983211 --- packages/react-native/ReactCommon/react/bridging/Object.h | 2 +- packages/rn-tester/android/app/build.gradle | 2 ++ packages/rn-tester/android/app/src/main/AndroidManifest.xml | 5 +++++ .../java/com/facebook/react/uiapp/RNTesterApplication.kt | 4 ++-- .../com/facebook/react/uiapp/RNTesterReactHostDelegate.kt | 4 ++-- 5 files changed, 12 insertions(+), 5 deletions(-) diff --git a/packages/react-native/ReactCommon/react/bridging/Object.h b/packages/react-native/ReactCommon/react/bridging/Object.h index 599b5ceb935788..89e5714b798f0f 100644 --- a/packages/react-native/ReactCommon/react/bridging/Object.h +++ b/packages/react-native/ReactCommon/react/bridging/Object.h @@ -31,7 +31,7 @@ struct Bridging< std::shared_ptr, std::enable_if_t>> { static std::shared_ptr fromJs(jsi::Runtime& rt, const jsi::Object& value) { - return value.asHostObject(rt); + return value.getHostObject(rt); } static jsi::Object toJs(jsi::Runtime& rt, std::shared_ptr value) { diff --git a/packages/rn-tester/android/app/build.gradle b/packages/rn-tester/android/app/build.gradle index b35e80be387c14..20669ea71b1e0e 100644 --- a/packages/rn-tester/android/app/build.gradle +++ b/packages/rn-tester/android/app/build.gradle @@ -146,6 +146,8 @@ android { versionName "1.0" testBuildType System.getProperty('testBuildType', 'debug') // This will later be used to control the test apk build type testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner' + buildConfigField("String", "JS_MAIN_MODULE_NAME", "\"js/RNTesterApp.android\"") + buildConfigField("String", "BUNDLE_ASSET_NAME", "\"RNTesterApp.android.bundle\"") } externalNativeBuild { cmake { diff --git a/packages/rn-tester/android/app/src/main/AndroidManifest.xml b/packages/rn-tester/android/app/src/main/AndroidManifest.xml index 7707683c667d0b..2d6ee37ba1b99d 100644 --- a/packages/rn-tester/android/app/src/main/AndroidManifest.xml +++ b/packages/rn-tester/android/app/src/main/AndroidManifest.xml @@ -1,5 +1,6 @@ + + diff --git a/packages/rn-tester/android/app/src/main/java/com/facebook/react/uiapp/RNTesterApplication.kt b/packages/rn-tester/android/app/src/main/java/com/facebook/react/uiapp/RNTesterApplication.kt index 871395ab7449eb..b427b7272d5f5f 100644 --- a/packages/rn-tester/android/app/src/main/java/com/facebook/react/uiapp/RNTesterApplication.kt +++ b/packages/rn-tester/android/app/src/main/java/com/facebook/react/uiapp/RNTesterApplication.kt @@ -43,9 +43,9 @@ class RNTesterApplication : Application(), ReactApplication { throw RuntimeException("Should not use ReactNativeHost when Bridgeless enabled") } object : DefaultReactNativeHost(this) { - public override fun getJSMainModuleName(): String = "js/RNTesterApp.android" + public override fun getJSMainModuleName(): String = BuildConfig.JS_MAIN_MODULE_NAME - public override fun getBundleAssetName(): String = "RNTesterApp.android.bundle" + public override fun getBundleAssetName(): String = BuildConfig.BUNDLE_ASSET_NAME override fun getUseDeveloperSupport(): Boolean = BuildConfig.DEBUG diff --git a/packages/rn-tester/android/app/src/main/java/com/facebook/react/uiapp/RNTesterReactHostDelegate.kt b/packages/rn-tester/android/app/src/main/java/com/facebook/react/uiapp/RNTesterReactHostDelegate.kt index a30f023309e260..7ed21ca7e6958c 100644 --- a/packages/rn-tester/android/app/src/main/java/com/facebook/react/uiapp/RNTesterReactHostDelegate.kt +++ b/packages/rn-tester/android/app/src/main/java/com/facebook/react/uiapp/RNTesterReactHostDelegate.kt @@ -39,10 +39,10 @@ import com.facebook.react.uimanager.ViewManager class RNTesterReactHostDelegate internal constructor(context: Context) : ReactHostDelegate { var reactHost: ReactHostImpl? = null - override val jsMainModulePath: String = "js/RNTesterApp.android" + override val jsMainModulePath: String = BuildConfig.JS_MAIN_MODULE_NAME override val jsBundleLoader: JSBundleLoader = - JSBundleLoader.createAssetLoader(context, "assets://RNTesterApp.android.bundle", true) + JSBundleLoader.createAssetLoader(context, "assets:" + BuildConfig.BUNDLE_ASSET_NAME, true) @get:Synchronized override val bindingsInstaller: BindingsInstaller? = null