@@ -17,14 +17,12 @@ import com.facebook.react.PackageList
1717import com.facebook.react.ReactApplication
1818import com.facebook.react.ReactHost
1919import com.facebook.react.ReactNativeApplicationEntryPoint.loadReactNative
20- import com.facebook.react.ReactNativeHost
2120import com.facebook.react.ReactPackage
2221import com.facebook.react.ViewManagerOnDemandReactPackage
2322import com.facebook.react.bridge.NativeModule
2423import com.facebook.react.bridge.ReactApplicationContext
2524import com.facebook.react.common.assets.ReactFontManager
2625import com.facebook.react.defaults.DefaultReactHost
27- import com.facebook.react.defaults.DefaultReactNativeHost
2826import com.facebook.react.module.model.ReactModuleInfo
2927import com.facebook.react.module.model.ReactModuleInfoProvider
3028import com.facebook.react.uiapp.component.MyLegacyViewManager
@@ -34,100 +32,91 @@ import com.facebook.react.uimanager.ReactShadowNode
3432import com.facebook.react.uimanager.ViewManager
3533
3634internal class RNTesterApplication : Application (), ReactApplication {
37- @Deprecated(
38- " You should not use ReactNativeHost directly in the New Architecture. Use ReactHost instead." ,
39- replaceWith = ReplaceWith (" reactHost" ),
40- )
41- override val reactNativeHost: ReactNativeHost by
35+ override val reactHost: ReactHost by
4236 lazy(LazyThreadSafetyMode .NONE ) {
43- object : DefaultReactNativeHost (this ) {
44- public override fun getJSMainModuleName (): String = BuildConfig .JS_MAIN_MODULE_NAME
37+ val packages: List <ReactPackage > =
38+ PackageList (this @RNTesterApplication).packages.apply {
39+ add(
40+ object : BaseReactPackage () {
41+ override fun getModule (
42+ name : String ,
43+ reactContext : ReactApplicationContext ,
44+ ): NativeModule ? =
45+ when (name) {
46+ SampleTurboModule .NAME -> SampleTurboModule (reactContext)
47+ SampleLegacyModule .NAME -> SampleLegacyModule (reactContext)
48+ else -> null
49+ }
4550
46- public override fun getBundleAssetName (): String = BuildConfig .BUNDLE_ASSET_NAME
47-
48- override fun getUseDeveloperSupport (): Boolean = BuildConfig .DEBUG
49-
50- public override fun getPackages (): List <ReactPackage > =
51- PackageList (this ).packages.apply {
52- add(
53- object : BaseReactPackage () {
54- override fun getModule (
55- name : String ,
56- reactContext : ReactApplicationContext ,
57- ): NativeModule ? =
58- when {
59- SampleTurboModule .NAME == name -> SampleTurboModule (reactContext)
60- SampleLegacyModule .NAME == name -> SampleLegacyModule (reactContext)
61- else -> null
62- }
63-
64- // Note: Specialized annotation processor for @ReactModule isn't configured in
65- // OSS yet. For now, hardcode this information, though it's not necessary for
66- // most modules.
67- override fun getReactModuleInfoProvider (): ReactModuleInfoProvider =
68- ReactModuleInfoProvider {
69- mapOf (
70- SampleTurboModule .NAME to
71- ReactModuleInfo (
72- SampleTurboModule .NAME ,
73- " SampleTurboModule" ,
74- canOverrideExistingModule = false ,
75- needsEagerInit = false ,
76- isCxxModule = false ,
77- isTurboModule = true ,
78- ),
79- SampleLegacyModule .NAME to
80- ReactModuleInfo (
81- SampleLegacyModule .NAME ,
82- " SampleLegacyModule" ,
83- canOverrideExistingModule = false ,
84- needsEagerInit = false ,
85- isCxxModule = false ,
86- isTurboModule = false ,
87- ),
88- )
89- }
90- }
91- )
92- add(
93- object : ReactPackage , ViewManagerOnDemandReactPackage {
94- override fun getViewManagerNames (reactContext : ReactApplicationContext ) =
95- listOf (
96- " RNTMyNativeView" ,
97- " RNTMyLegacyNativeView" ,
98- " RNTReportFullyDrawnView" ,
51+ // Note: Specialized annotation processor for @ReactModule isn't configured in
52+ // OSS yet. For now, hardcode this information, though it's not necessary for
53+ // most modules.
54+ override fun getReactModuleInfoProvider (): ReactModuleInfoProvider =
55+ ReactModuleInfoProvider {
56+ mapOf (
57+ SampleTurboModule .NAME to
58+ ReactModuleInfo (
59+ SampleTurboModule .NAME ,
60+ " SampleTurboModule" ,
61+ canOverrideExistingModule = false ,
62+ needsEagerInit = false ,
63+ isCxxModule = false ,
64+ isTurboModule = true ,
65+ ),
66+ SampleLegacyModule .NAME to
67+ ReactModuleInfo (
68+ SampleLegacyModule .NAME ,
69+ " SampleLegacyModule" ,
70+ canOverrideExistingModule = false ,
71+ needsEagerInit = false ,
72+ isCxxModule = false ,
73+ isTurboModule = false ,
74+ ),
9975 )
76+ }
77+ }
78+ )
79+ add(
80+ object : ReactPackage , ViewManagerOnDemandReactPackage {
81+ override fun getViewManagerNames (reactContext : ReactApplicationContext ) =
82+ listOf (
83+ " RNTMyNativeView" ,
84+ " RNTMyLegacyNativeView" ,
85+ " RNTReportFullyDrawnView" ,
86+ )
10087
101- override fun createViewManagers (
102- reactContext : ReactApplicationContext
103- ): List <ViewManager <* , * >> =
104- listOf (
105- MyNativeViewManager (),
106- MyLegacyViewManager (reactContext),
107- ReportFullyDrawnViewManager (),
108- )
88+ override fun createViewManagers (
89+ reactContext : ReactApplicationContext
90+ ): List <ViewManager <* , * >> =
91+ listOf (
92+ MyNativeViewManager (),
93+ MyLegacyViewManager (reactContext),
94+ ReportFullyDrawnViewManager (),
95+ )
10996
110- override fun createViewManager (
111- reactContext : ReactApplicationContext ,
112- viewManagerName : String ,
113- ): ViewManager <* , out ReactShadowNode <* >>? =
114- when (viewManagerName) {
115- " RNTMyNativeView" -> MyNativeViewManager ()
116- " RNTMyLegacyNativeView" -> MyLegacyViewManager (reactContext)
117- " RNTReportFullyDrawnView" -> ReportFullyDrawnViewManager ()
118- else -> null
119- }
120- }
121- )
122- }
97+ override fun createViewManager (
98+ reactContext : ReactApplicationContext ,
99+ viewManagerName : String ,
100+ ): ViewManager <* , out ReactShadowNode <* >>? =
101+ when (viewManagerName) {
102+ " RNTMyNativeView" -> MyNativeViewManager ()
103+ " RNTMyLegacyNativeView" -> MyLegacyViewManager (reactContext)
104+ " RNTReportFullyDrawnView" -> ReportFullyDrawnViewManager ()
105+ else -> null
106+ }
107+ }
108+ )
109+ }
123110
124- override val isNewArchEnabled: Boolean = BuildConfig .IS_NEW_ARCHITECTURE_ENABLED
125- }
111+ DefaultReactHost .getDefaultReactHost(
112+ applicationContext,
113+ packages,
114+ jsMainModulePath = BuildConfig .JS_MAIN_MODULE_NAME ,
115+ jsBundleAssetPath = BuildConfig .BUNDLE_ASSET_NAME ,
116+ useDevSupport = BuildConfig .DEBUG ,
117+ )
126118 }
127119
128- override val reactHost: ReactHost
129- get() = DefaultReactHost .getDefaultReactHost(applicationContext, reactNativeHost)
130-
131120 override fun onCreate () {
132121 ReactFontManager .getInstance().addCustomFont(this , " Rubik" , R .font.rubik)
133122 super .onCreate()
0 commit comments