Skip to content

Commit 735a5db

Browse files
authored
fix(android): handle DevServerHelper constructor signature change (#1423)
1 parent 53ab08d commit 735a5db

5 files changed

Lines changed: 66 additions & 42 deletions

File tree

android/app/build.gradle

Lines changed: 27 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -303,45 +303,37 @@ android {
303303
}
304304

305305
sourceSets {
306-
if (project.ext.react.enableCamera) {
307-
main.java.srcDirs += "src/camera/java"
308-
} else {
309-
main.java.srcDirs += "src/no-camera/java"
310-
}
306+
main.java.srcDirs += [
307+
project.ext.react.enableCamera ? "src/camera/java" : "src/no-camera/java",
308+
309+
// TODO: Remove this block when we drop support for 0.67
310+
project.ext.react.enableFabric ? "src/fabric/java" : "src/no-fabric/java",
311+
312+
// TODO: Remove this block when we drop support for 0.65
313+
enableNewArchitecture ? "src/turbomodule/java" : "src/no-turbomodule/java",
314+
315+
// TODO: Remove this block when we drop support for 0.67
316+
// https://github.com/facebook/react-native/commit/ce74aa4ed335d4c36ce722d47937b582045e05c4
317+
reactNativeVersion > 0 && reactNativeVersion < 6800
318+
? "src/reactinstanceeventlistener-pre-0.68/java"
319+
: "src/reactinstanceeventlistener-0.68/java",
320+
321+
// TODO: Remove this block when we drop support for 0.72
322+
// https://github.com/facebook/react-native/commit/e5dd9cdc6688e63e75a7e0bebf380be1a9a5fe2b
323+
reactNativeVersion > 0 && reactNativeVersion < 7200
324+
? "src/reactactivitydelegate-pre-0.72/java"
325+
: "src/reactactivitydelegate-0.72/java",
326+
327+
// TODO: Remove this block when we drop support for 0.73
328+
// https://github.com/facebook/react-native/commit/da358d0ec7a492edb804b9cdce70e7516ee518ae
329+
reactNativeVersion > 0 && reactNativeVersion < 7300
330+
? "src/devserverhelper-pre-0.73/java"
331+
: "src/devserverhelper-0.73/java",
332+
]
311333

312334
if (project.ext.react.enableFlipper) {
313335
debug.java.srcDirs += "src/flipper/java"
314336
}
315-
316-
// TODO: Remove this block when we drop support for 0.67
317-
if (project.ext.react.enableFabric) {
318-
main.java.srcDirs += "src/fabric/java"
319-
} else {
320-
main.java.srcDirs += "src/no-fabric/java"
321-
}
322-
323-
// TODO: Remove this block when we drop support for 0.65
324-
if (enableNewArchitecture) {
325-
main.java.srcDirs += "src/turbomodule/java"
326-
} else {
327-
main.java.srcDirs += "src/no-turbomodule/java"
328-
}
329-
330-
// TODO: Remove this block when we drop support for 0.67
331-
// https://github.com/facebook/react-native/commit/ce74aa4ed335d4c36ce722d47937b582045e05c4
332-
if (reactNativeVersion > 0 && reactNativeVersion < 6800) {
333-
main.java.srcDirs += "src/reactinstanceeventlistener-pre-0.68/java"
334-
} else {
335-
main.java.srcDirs += "src/reactinstanceeventlistener-0.68/java"
336-
}
337-
338-
// TODO: Remove this block when we drop support for 0.72
339-
// https://github.com/facebook/react-native/commit/e5dd9cdc6688e63e75a7e0bebf380be1a9a5fe2b
340-
if (reactNativeVersion > 0 && reactNativeVersion < 7200) {
341-
main.java.srcDirs += "src/reactactivitydelegate-pre-0.72/java"
342-
} else {
343-
main.java.srcDirs += "src/reactactivitydelegate-0.72/java"
344-
}
345337
}
346338

347339
splits {
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package com.microsoft.reacttestapp.react
2+
3+
import android.content.Context
4+
import com.facebook.react.devsupport.DevServerHelper
5+
import com.facebook.react.devsupport.InspectorPackagerConnection.BundleStatus
6+
import com.facebook.react.modules.debug.interfaces.DeveloperSettings
7+
import com.facebook.react.packagerconnection.PackagerConnectionSettings
8+
9+
fun createDevServerHelper(context: Context, developerSettings: DeveloperSettings): DevServerHelper {
10+
return DevServerHelper(
11+
developerSettings,
12+
context.packageName,
13+
{ BundleStatus() },
14+
PackagerConnectionSettings(context)
15+
)
16+
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package com.microsoft.reacttestapp.react
2+
3+
import android.content.Context
4+
import com.facebook.react.devsupport.DevInternalSettings
5+
import com.facebook.react.devsupport.DevServerHelper
6+
import com.facebook.react.devsupport.InspectorPackagerConnection.BundleStatus
7+
import com.facebook.react.modules.debug.interfaces.DeveloperSettings
8+
9+
fun createDevServerHelper(
10+
context: Context,
11+
@Suppress("UNUSED_PARAMETER") developerSettings: DeveloperSettings
12+
): DevServerHelper {
13+
return DevServerHelper(
14+
DevInternalSettings(context) {},
15+
context.packageName,
16+
{ BundleStatus() }
17+
)
18+
}

android/app/src/main/java/com/microsoft/reacttestapp/react/TestAppReactNativeHost.kt

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,6 @@ import com.facebook.react.ReactPackage
1212
import com.facebook.react.bridge.JSIModulePackage
1313
import com.facebook.react.bridge.JavaScriptExecutorFactory
1414
import com.facebook.react.bridge.ReactContext
15-
import com.facebook.react.devsupport.DevInternalSettings
16-
import com.facebook.react.devsupport.DevServerHelper
17-
import com.facebook.react.devsupport.InspectorPackagerConnection.BundleStatus
1815
import com.facebook.react.devsupport.interfaces.DevSupportManager
1916
import com.facebook.react.modules.systeminfo.ReactNativeVersion
2017
import com.facebook.react.packagerconnection.PackagerConnectionSettings
@@ -212,13 +209,12 @@ class TestAppReactNativeHost(
212209
val latch = CountDownLatch(1)
213210
var packagerIsRunning = false
214211

215-
DevServerHelper(
216-
DevInternalSettings(context) {},
217-
context.packageName
218-
) { BundleStatus() }.isPackagerRunning {
212+
val devSettings = reactInstanceManager.devSupportManager.devSettings
213+
createDevServerHelper(context, devSettings).isPackagerRunning {
219214
packagerIsRunning = it
220215
latch.countDown()
221216
}
217+
222218
latch.await()
223219
return packagerIsRunning
224220
}

test/pack.test.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ describe("npm pack", () => {
3131
"android/app/lint.xml",
3232
"android/app/src/camera/java/com/microsoft/reacttestapp/camera/MainActivityExtensions.kt",
3333
"android/app/src/camera/java/com/microsoft/reacttestapp/camera/QRCodeScannerFragment.kt",
34+
"android/app/src/devserverhelper-0.73/java/com/microsoft/reacttestapp/react/DevServerHelperCompat.kt",
35+
"android/app/src/devserverhelper-pre-0.73/java/com/microsoft/reacttestapp/react/DevServerHelperCompat.kt",
3436
"android/app/src/fabric/java/com/microsoft/reacttestapp/fabric/FabricJSIModulePackage.kt",
3537
"android/app/src/flipper/java/com/microsoft/reacttestapp/ReactNativeFlipper.kt",
3638
"android/app/src/main/AndroidManifest.xml",

0 commit comments

Comments
 (0)