Skip to content

Commit

Permalink
[dev-menu][dev-launcher] fix jsc support (#27507)
Browse files Browse the repository at this point in the history
# Why

fixes #27357
close ENG-11541

# How

since expo 50 with android minSdkVersion 23, native libs are lived
inside apk. the current react-native's soloader does not support this
flow for `SoLoader.getLibraryPath()`. we use this method in [jsc
detection](https://github.com/expo/expo/blob/3d2157c5d9a351cd692fe245a1134a6d9540b0b8/packages/expo-dev-launcher/android/src/react-native-72/debug/expo/modules/devlauncher/rncompatibility/DevLauncherReactNativeHostHandler.kt#L38).
the newer soloader 0.11.0 added the support.

one risky concern is that react-native currently only has soloader
0.10.5. when bumping the soloader, the dependency is affected to the
whole app. but i believe meta internally used the latest soloader
already. it's good to try out and see how it goes.

# Test Plan

update jsEngine=jsc in bare-expo and launch dev-launcher/dev-menu on
bare-expo
  • Loading branch information
Kudo committed Mar 11, 2024
1 parent 89c2289 commit 283c31d
Show file tree
Hide file tree
Showing 4 changed files with 4 additions and 0 deletions.
1 change: 1 addition & 0 deletions packages/expo-dev-launcher/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
- [Android] Fixed to not return DevLauncherDevSupportManagerFactory in host handler when `enableAutoSetup` is false. ([#27068](https://github.com/expo/expo/pull/27068) by [@jayshah123](https://github.com/jayshah123))
- Fixed missing `runtimeVersion` error when loading app with `expo-updates` and `expo-dev-client`. ([#27180](https://github.com/expo/expo/pull/27180) by [@kudo](https://github.com/kudo))
- Remove legacy flag from command line hint. ([#27225](https://github.com/expo/expo/pull/27225) by [@simek](https://github.com/simek))
- Fixed libhermes.so loading error when the app running on JSC jsEngine. ([#27507](https://github.com/expo/expo/pull/27507) by [@kudo](https://github.com/kudo))

### 💡 Others

Expand Down
1 change: 1 addition & 0 deletions packages/expo-dev-launcher/android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -152,6 +152,7 @@ dependencies {
}

implementation 'com.facebook.react:react-android'
implementation 'com.facebook.soloader:soloader:0.11.0'

implementation 'commons-io:commons-io:2.6'

Expand Down
1 change: 1 addition & 0 deletions packages/expo-dev-menu/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
- Fixed `Unrecognised selector` crash for `extraModulesForBridge:` on iOS. ([#26523](https://github.com/expo/expo/pull/26523) by [@kudo](https://github.com/kudo))
- Fix runtime version overflow ([#27172](https://github.com/expo/expo/pull/27172) by [@kadikraman](https://github.com/kadikraman))
- Fixed registerDevMenuItems duplicating items rather than replacing. ([#27356](https://github.com/expo/expo/pull/27356) by [@lukmccall](https://github.com/lukmccall))
- Fixed libhermes.so loading error when the app running on JSC jsEngine. ([#27507](https://github.com/expo/expo/pull/27507) by [@kudo](https://github.com/kudo))

### 💡 Others

Expand Down
1 change: 1 addition & 0 deletions packages/expo-dev-menu/android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,7 @@ dependencies {
implementation 'com.google.code.gson:gson:2.8.6'

implementation 'com.facebook.react:react-android'
implementation 'com.facebook.soloader:soloader:0.11.0'
implementation "androidx.transition:transition:1.1.0" // use by react-native-reanimated

// Fixes
Expand Down

0 comments on commit 283c31d

Please sign in to comment.