From dd10134bdcf9f046bde3136a694e3482e5876c34 Mon Sep 17 00:00:00 2001 From: Amy Nichol Date: Fri, 17 Sep 2021 06:55:16 -0700 Subject: [PATCH] Option to use fallback bundle in dev mode Summary: Changelog: [Android] [Added] - Adds option use fallback bundle instead of cached bundle when the packager isn't running in ReactInstanceManager Reviewed By: ShikaSD Differential Revision: D30899295 fbshipit-source-id: 7ea68fb13029bde9c3170cacee92b3c8a0a7367d --- .../java/com/facebook/react/ReactInstanceManager.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java b/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java index 6df4dd1bd9..72f0e37965 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java @@ -184,6 +184,7 @@ public class ReactInstanceManager { private final @Nullable JSIModulePackage mJSIModulePackage; private final @Nullable ReactPackageTurboModuleManagerDelegate.Builder mTMMDelegateBuilder; private List mViewManagers; + private boolean mUseFallbackBundle = false; private class ReactContextInitParams { private final JavaScriptExecutorFactory mJsExecutorFactory; @@ -350,6 +351,10 @@ public class ReactInstanceManager { }; } + public synchronized void setUseFallbackBundle(boolean useFallbackBundle) { + mUseFallbackBundle = useFallbackBundle; + } + private JavaScriptExecutorFactory getJSExecutorFactory() { return mJavaScriptExecutorFactory; } @@ -452,7 +457,8 @@ public class ReactInstanceManager { if (packagerIsRunning) { mDevSupportManager.handleReloadJS(); } else if (mDevSupportManager.hasUpToDateJSBundleInCache() - && !devSettings.isRemoteJSDebugEnabled()) { + && !devSettings.isRemoteJSDebugEnabled() + && !mUseFallbackBundle) { // If there is a up-to-date bundle downloaded from server, // with remote JS debugging disabled, always use that. onJSBundleLoadedFromServer();