@@ -41,8 +41,22 @@ class ReactNativeBrownfield private constructor(val reactNativeHost: ReactNative
4141 @JvmStatic
4242 val shared: ReactNativeBrownfield get() = instance
4343
44- private fun initialize (rnHost : ReactNativeHost , callback : InitializedCallback ? = null) {
44+ private fun loadNativeLibs (application : Application ) {
45+ val rnVersion = BuildConfig .RN_VERSION
46+
47+ if (VersionUtils .isVersionLessThan(rnVersion, RN_THRESHOLD_VERSION )) {
48+ SoLoader .init (application.applicationContext, OpenSourceMergedSoMapping )
49+ if (BuildConfig .IS_NEW_ARCHITECTURE_ENABLED ) {
50+ // If you opted-in for the New Architecture, we load the native entry point for this app.
51+ load()
52+ }
53+ }
54+ }
55+
56+ @JvmStatic
57+ fun initialize (application : Application , rnHost : ReactNativeHost , callback : InitializedCallback ? = null) {
4558 if (! initialized.getAndSet(true )) {
59+ loadNativeLibs(application)
4660 instance = ReactNativeBrownfield (rnHost)
4761
4862 preloadReactNative {
@@ -51,7 +65,8 @@ class ReactNativeBrownfield private constructor(val reactNativeHost: ReactNative
5165 }
5266 }
5367
54- private fun initialize (application : Application , options : HashMap <String , Any >, callback : InitializedCallback ? = null) {
68+ @JvmStatic
69+ fun initialize (application : Application , options : HashMap <String , Any >, callback : InitializedCallback ? = null) {
5570 val reactNativeHost: ReactNativeHost =
5671 object : DefaultReactNativeHost (application) {
5772
@@ -70,21 +85,12 @@ class ReactNativeBrownfield private constructor(val reactNativeHost: ReactNative
7085 override val isHermesEnabled: Boolean = BuildConfig .IS_HERMES_ENABLED
7186 }
7287
73- initialize(reactNativeHost, callback)
88+ initialize(application, reactNativeHost, callback)
7489 }
7590
7691 @JvmStatic
7792 fun initialize (application : Application , packages : List <ReactPackage >, callback : InitializedCallback ? = null) {
7893 val options = hashMapOf(" packages" to packages, " mainModuleName" to " index" )
79- val rnVersion = BuildConfig .RN_VERSION
80-
81- if (VersionUtils .isVersionLessThan(rnVersion, RN_THRESHOLD_VERSION )) {
82- SoLoader .init (application.applicationContext, OpenSourceMergedSoMapping )
83- if (BuildConfig .IS_NEW_ARCHITECTURE_ENABLED ) {
84- // If you opted-in for the New Architecture, we load the native entry point for this app.
85- load()
86- }
87- }
8894
8995 initialize(application, options, callback)
9096 }
0 commit comments