Skip to content

Commit ad93680

Browse files
hoxyqfacebook-github-bot
authored andcommitted
fix[android]: fix bridgeless configuration to include DebuggingOverlay in react packages (#43661)
Summary: Pull Request resolved: #43661 # Changelog: [Internal] 1. Remove `BridgelessDebugReactPackage.java`, this was added in D43407534. Technically, its the same as `DebugCorePackage.java`. 2. `ReactInstance` to add `DebugCorePackage`, so `DebuggingOverlay` view manager will be included in the bridgeless build. 3. Fix `RNTesterApplication.kt` to NOT create `MyLegacyViewManager` for every possible viewManagerName, apart from `"RNTMyNativeView"`, return null instead. Reviewed By: cortinico Differential Revision: D55375350 fbshipit-source-id: 1d3cb6b5ad3c0248df1def9f37c8c49b308f4473
1 parent 4841373 commit ad93680

File tree

4 files changed

+18
-3
lines changed

4 files changed

+18
-3
lines changed

packages/react-native/ReactAndroid/api/ReactAndroid.api

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,15 @@ public class com/facebook/react/CoreModulesPackage$$ReactModuleInfoProvider : co
2929
public fun getReactModuleInfos ()Ljava/util/Map;
3030
}
3131

32+
public class com/facebook/react/DebugCorePackage : com/facebook/react/TurboReactPackage, com/facebook/react/ViewManagerOnDemandReactPackage {
33+
public fun <init> ()V
34+
public fun createViewManager (Lcom/facebook/react/bridge/ReactApplicationContext;Ljava/lang/String;)Lcom/facebook/react/uimanager/ViewManager;
35+
public fun getModule (Ljava/lang/String;Lcom/facebook/react/bridge/ReactApplicationContext;)Lcom/facebook/react/bridge/NativeModule;
36+
public fun getReactModuleInfoProvider ()Lcom/facebook/react/module/model/ReactModuleInfoProvider;
37+
public fun getViewManagerNames (Lcom/facebook/react/bridge/ReactApplicationContext;)Ljava/util/Collection;
38+
public fun getViewManagers (Lcom/facebook/react/bridge/ReactApplicationContext;)Ljava/util/List;
39+
}
40+
3241
public class com/facebook/react/DebugCorePackage$$ReactModuleInfoProvider : com/facebook/react/module/model/ReactModuleInfoProvider {
3342
public fun <init> ()V
3443
public fun getReactModuleInfos ()Ljava/util/Map;

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
JSCHeapCapture.class,
3737
})
3838
/* package */
39-
class DebugCorePackage extends TurboReactPackage implements ViewManagerOnDemandReactPackage {
39+
public class DebugCorePackage extends TurboReactPackage implements ViewManagerOnDemandReactPackage {
4040
private @Nullable Map<String, ModuleSpec> mViewManagers;
4141

4242
public DebugCorePackage() {}

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import com.facebook.infer.annotation.ThreadSafe;
1616
import com.facebook.jni.HybridData;
1717
import com.facebook.proguard.annotations.DoNotStrip;
18+
import com.facebook.react.DebugCorePackage;
1819
import com.facebook.react.ReactPackage;
1920
import com.facebook.react.ViewManagerOnDemandReactPackage;
2021
import com.facebook.react.bridge.Arguments;
@@ -176,6 +177,9 @@ final class ReactInstance {
176177
new CoreReactPackage(
177178
bridgelessReactContext.getDevSupportManager(),
178179
bridgelessReactContext.getDefaultHardwareBackBtnHandler()));
180+
if (useDevSupport) {
181+
mReactPackages.add(new DebugCorePackage());
182+
}
179183
mReactPackages.addAll(mDelegate.getReactPackages());
180184

181185
TurboModuleManagerDelegate turboModuleManagerDelegate =

packages/rn-tester/android/app/src/main/java/com/facebook/react/uiapp/RNTesterApplication.kt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,11 +111,13 @@ class RNTesterApplication : Application(), ReactApplication {
111111
override fun createViewManager(
112112
reactContext: ReactApplicationContext,
113113
viewManagerName: String
114-
): ViewManager<*, out ReactShadowNode<*>> =
114+
): ViewManager<*, out ReactShadowNode<*>>? =
115115
if (viewManagerName == "RNTMyNativeView") {
116116
MyNativeViewManager()
117-
} else {
117+
} else if (viewManagerName == "RNTMyLegacyNativeView") {
118118
MyLegacyViewManager(reactContext)
119+
} else {
120+
null
119121
}
120122
})
121123
}

0 commit comments

Comments
 (0)