-
Notifications
You must be signed in to change notification settings - Fork 24.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Raise out android-jsc issues in current master #22274
Comments
This comment has been minimized.
This comment has been minimized.
I will take a look at RNTester build tormorrow, I have tested it, maybe I miss something. |
For the first, the miniSDK it's still 16, I am using a fork of buck when build it. |
@gengjiawen The problem of minSDK is caused by this line in fact. For APP_PLATFORM, there is some reference on stackoverflow. |
Yes, I know that. I only change app_platform when I bundle 64bit. |
So then did you use facebookarchive/android-jsc#30 to create the android-jsc.aar that you checked into this project, or you only used to create 64bit .so files, then created the .aar by hand by adding all of regular 32bit .so files and the new 64bit .so files? |
I put the buck patch link in pr description, and want to update the buck version later, but buck team seems not care this issue. |
@gengjiawen FYI, BUCK support an option |
@Kudo Thanks. So the master branch actually won't crash on pre-sdk-21 device. |
@gengjiawen How did you test that master branch code will not crash on pre-sdk-21 devices? One way to check the unresolved symbols:
Also agreed to migrate jsc-android-buildscript. Maybe #22263 (comment) will fix the issue right now. |
To keep consistency, I keep the original |
Could you check your libjsc.so MD5 checksum?
jcenter JSC download from https://bintray.com/react-native/android/download_file?file_path=org%2Fwebkit%2Fandroid-jsc%2Fr174650%2Fandroid-jsc-r174650.aar
Most of unresolved symbols are implemented after API 18, so please ensure to test on Android 4.1 environment. |
@Kudo Yes, l checked again the hash on macOS, looks you result is right. The md5 I tested is on windows. Guess I maybe miss something. |
Replace the so with the old one or just upgrade to new jsc ? @DanielZlotin looks like testing it. |
OK, I'll wait for a while. |
Another way to try reproducing the #2 case is to run:
and then, try running the Android app. This is how I stumbled upon this issue while initing an app with |
Related pr: #22293. |
This comment has been minimized.
This comment has been minimized.
Summary: My silly mistake when tinkering with the jsc lib. Also you have this patch first #22295. Kudo plz review. ![image](https://user-images.githubusercontent.com/3759816/48561684-758f6f00-e92b-11e8-905b-e394f72349f7.png) Pull Request resolved: #22293 Differential Revision: D13153931 Pulled By: hramos fbshipit-source-id: 8a6efa0cd8abbff359f082d5ea7713933b6e7ac6
Summary: My silly mistake when tinkering with the jsc lib. Also you have this patch first facebook#22295. Kudo plz review. ![image](https://user-images.githubusercontent.com/3759816/48561684-758f6f00-e92b-11e8-905b-e394f72349f7.png) Pull Request resolved: facebook#22293 Differential Revision: D13153931 Pulled By: hramos fbshipit-source-id: 8a6efa0cd8abbff359f082d5ea7713933b6e7ac6
Summary: My silly mistake when tinkering with the jsc lib. Also you have this patch first facebook#22295. Kudo plz review. ![image](https://user-images.githubusercontent.com/3759816/48561684-758f6f00-e92b-11e8-905b-e394f72349f7.png) Pull Request resolved: facebook#22293 Differential Revision: D13153931 Pulled By: hramos fbshipit-source-id: 8a6efa0cd8abbff359f082d5ea7713933b6e7ac6
Environment
React Native Environment Info:
System:
OS: macOS 10.14
CPU: x64 Intel(R) Core(TM) i5-5287U CPU @ 2.90GHz
Memory: 4.55 GB / 16.00 GB
Shell: 5.6.2 - /usr/local/bin/zsh
Binaries:
Node: 8.12.0 - ~/.nvm/versions/node/v8.12.0/bin/node
Yarn: 1.12.1 - /usr/local/bin/yarn
npm: 6.4.1 - ~/.nvm/versions/node/v8.12.0/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
iOS SDK:
Platforms: iOS 12.1, macOS 10.14, tvOS 12.1, watchOS 5.1
Android SDK:
Build Tools: 21.1.2, 23.0.1, 23.0.2, 23.0.3, 24.0.0, 24.0.1, 25.0.2, 25.0.3, 26.0.0, 26.0.1, 26.0.2, 27.0.0, 27.0.1, 27.0.3, 28.0.0, 28.0.2, 28.0.3
API Levels: 17, 19, 22, 23, 25, 26, 27, 28
IDEs:
Android Studio: 3.2 AI-181.5540.7.32.5056338
Xcode: 10.1/10B61 - /usr/bin/xcodebuild
Description
There are two issues for current approach of android-jsc adoption. Related to #18754.
The minSdkVersion is implicitly changed to API 21.
Running on Android < 5 will have launch crash.
Since this android-jsc is built by NDK APP_PLATFORM 21,
there are some unresolved symbols for Android < 5 devices. E.g.
sigemptyset
Build break once published out as AAR format.
Currently the dependency of android-jsc is added by this line.
compile project(':android-jsc')
For Android library as AAR, this dependency just tells the integrated application there is a 'android-jsc' package need to further resolved. Neither jar nor *.so will be packed into react-native AAR.
User does not have android-jsc in their gradle projects, the dependency not found problem will cause build break.
(Google plans to officially support fat aar in gradle plugin, which is fulfill this case to bundle all things in one AAR, but not ready yet.)
Reproducible Demo
Simply do
./gradlew :RNTester:android:app:installDebug
on Android 4.1 emulator and check adb log for missing symbols.E.g.
./gradlew :ReactAndroid:uploadArchives
./gradlew :RNTester:android:app:assembleDebug
The text was updated successfully, but these errors were encountered: