diff --git a/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java b/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java index 11a469278b516e..2d61f97cf800b3 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +++ b/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java @@ -56,7 +56,7 @@ public ReactActivityDelegate(ReactActivity activity, @Nullable String mainCompon return null; } - private @NonNull Bundle composeLaunchOptions() { + protected @NonNull Bundle composeLaunchOptions() { Bundle composedLaunchOptions = getLaunchOptions(); if (isFabricEnabled()) { if (composedLaunchOptions == null) { @@ -71,6 +71,10 @@ protected ReactRootView createRootView() { return new ReactRootView(getContext()); } + protected ReactRootView createRootView(Bundle initialProps) { + return new ReactRootView(getContext()); + } + /** * Get the {@link ReactNativeHost} used by this app. By default, assumes {@link * Activity#getApplication()} is an instance of {@link ReactApplication} and calls {@link @@ -98,7 +102,7 @@ protected void onCreate(Bundle savedInstanceState) { getPlainActivity(), getReactNativeHost(), mainComponentName, launchOptions) { @Override protected ReactRootView createRootView() { - return ReactActivityDelegate.this.createRootView(); + return ReactActivityDelegate.this.createRootView(launchOptions); } }; if (mainComponentName != null) { diff --git a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java index 8e68d025913d2d..9143b9c36a8422 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +++ b/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java @@ -511,7 +511,10 @@ public boolean isBridgeless() { * synchronized(jsContext) { nativeThingNeedingJsContext(jsContext.get()); } */ public JavaScriptContextHolder getJavaScriptContextHolder() { - return mCatalystInstance.getJavaScriptContextHolder(); + if (mCatalystInstance != null) { + return mCatalystInstance.getJavaScriptContextHolder(); + } + return null; } public @Nullable JSIModule getJSIModule(JSIModuleType moduleType) { diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.java b/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.java index 60e05a404d77d9..51881ebc4a5e8a 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.java @@ -23,7 +23,7 @@ static void install(final ReactContext reactContext, final BlobModule blobModule public void run() { JavaScriptContextHolder jsContext = reactContext.getJavaScriptContextHolder(); // When debugging in chrome the JS context is not available. - if (jsContext.get() != 0) { + if (jsContext != null && jsContext.get() != 0) { nativeInstall(blobModule, jsContext.get()); } } diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.java index 8ad1004f414b32..4eaa3f2d0b9a34 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.java @@ -58,7 +58,9 @@ public void hide() { new Runnable() { @Override public void run() { - mDevLoadingViewManager.hide(); + if (mDevLoadingViewManager != null) { + mDevLoadingViewManager.hide(); + } } }); }