-
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
App Crash on Android OS 5.1.1 Real Oppo R7s (32BIT) RN(0.60.0) #25490
Comments
same problem,so many users tell us they can't use our app
|
The problem is caused by OPPP's install application. You have to added the short of 64bit so files to come across the problem |
the same problem .
crash on Android 5.0/5.1/5.1.1 device. |
@BennyTian If my answer can't resolve the problem ? |
I am going to try thanks . |
Facing same issue. Count of 64bit & 32bit libs is same @ckitterl |
Same issue in VIVO X7... |
@zsajjad VIVO or OPPO. I test on OPPO R9 with colorOS v3.0.0 and android 5.1; If the count of 64bit & 32bit libs are same, everything is OK. But Failed with VIVO X7 as codyi96 said |
I made changes to packagingOptions and things are working fine on all devices both 64-bit & 32 bit devices defaultConfig {
ndk {
abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64'
}
}
...
packagingOptions {
doNotStrip '*/mips/*.so'
doNotStrip '*/mips64/*.so'
pickFirst '**/armeabi-v7a/libc++_shared.so'
pickFirst '**/x86/libc++_shared.so'
pickFirst '**/arm64-v8a/libc++_shared.so'
pickFirst '**/x86_64/libc++_shared.so'
pickFirst '**/x86/libjsc.so'
pickFirst '**/armeabi-v7a/libjsc.so'
exclude "lib/arm64-v8a/libgnustl_shared.so"
exclude '/lib/mips64/**'
exclude '/lib/arm64-v8a/**'
exclude '/lib/x86_64/**'
} |
Thank you for your reply! But I have different opinions. defaultConfig {
ndk {
abiFilters 'arm64-v8a'
}
} In this case, you only used .so files for armeabi-v7a instead of arm64-v8a, so it works.😂 |
Fixed: facebook/react-native#25490 Make extraction strategy of .so files smarter. In past versions, SoLoader follows standard rule to extract .so files from zip. However, some phones customize application installer which doesn't follow standard rule. And then, may cause crash because .so files of different ABI is loaded in the application. But now, SoLoader will parse .so files in lib dir to determine which ABI should be extracted. It can ensure that only one type of ABI will be loaded in the application so that SoLoader can be adapted for more models.
@zsajjad I tried your suggestion by making changes to packagingOptions which now throws an exception saying
Any idea why's that so? |
Fixed by this pr. |
Awesome, thanks @codyi96, I'll take a look. |
Fixed: facebook/react-native#25490 Make extraction strategy of .so files smarter. In past versions, SoLoader follows standard rule to extract .so files from zip. However, some phones customize application installer which doesn't follow standard rule. It may cause crash because .so files of different ABI is loaded in the application. In order to deal with this problem, SoLoader will parse current process path to determine which ABI should be extracted. It'll ensure that only one type of ABI will be loaded in the application so that SoLoader can be adapted for more models.
Fixed: facebook/react-native#25490 Make extraction strategy of .so files smarter. In past versions, SoLoader follows standard rule to extract .so files from zip. However, some phones customize application installer which doesn't follow standard rule. It may cause crash because .so files of different ABI is loaded in the application. In order to deal with this problem, SoLoader will parse current process path to determine which ABI should be extracted. It'll ensure that only one type of ABI will be loaded in the application so that SoLoader can be adapted for more models.
Fixed: facebook/react-native#25490 Make extraction strategy of .so files smarter. In past versions, SoLoader follows standard rule to extract .so files from zip. However, some phones customize application installer which doesn't follow standard rule. It may cause crash because .so files of different ABIs are loaded in the application. In order to deal with this problem, SoLoader will parse the path of current process to determine which ABI should be extracted. It'll ensure that only one type of ABI will be loaded in the application so that SoLoader can be adapted for more models.
Summary: fix [bug](facebook/react-native#25490). Make extraction strategy of .so files smarter. In past versions, SoLoader follows standard rule to extract .so files from zip. However, some phones customize application installer which doesn't follow standard rule. And then, may cause crash because .so files of different ABI is loaded in the application. In this version, SoLoader will parse .so files in lib dir to determine which ABI of .so files should be extracted to lib-main dir. It can ensure that only one type of ABI will be loaded in the application so that SoLoader can be adapted for more models. Pull Request resolved: #45 Reviewed By: BurntBrunch Differential Revision: D16939437 Pulled By: oprisnik fbshipit-source-id: de4211ddcf71cedb4654a7d857ea2fbe818e021d
SoLoader 0.8.0 has been released. You can now update the version for RN and this should be fixed, fingers crossed. Side note: With v0.8.0, we've also released a new |
Hi,guys.I have given up using fresco. Facebook developer solves the problem too slowly; use Glide to solve my problem |
react-native v0.60.5 |
@auchaphon Upgrade Soloader 0.80 will resolve your problem. |
how to upgrade in react-native , please |
|
@auchaphon configurations.all {
resolutionStrategy {
force "com.facebook.soloader:soloader:0.8.0"
}
} |
in which file we have to force the soloader newer version ???? |
build.gradle under your module folder. You can check the version by run File: build.gradle.txt |
Can confirm that forcing soloader to 0.8.0 did not fix the issue. Still seeing the following crash on react-native 0.60.5 + react-native-v8 (i.e. not using hermes)
|
@codyi96 Hi, I had forced to 0.8.0 version, but still faced the same issue. Any advice? |
@nolife08021 Could u show me the logcat? Maybe this issue and yours are different, i guess.🤔 |
Thanks for help. I fixed it with this solution https://github.com/facebook/react-native/issues/25415#issuecomment-541404167 |
@nolife08021 That link comes up dead for me, can you confirm if it's still the solution or if it has moved? Any copy-paste would be great, too. |
It work for me. Thank bro |
Hey there, it looks like there has been no activity on this issue recently. Has the issue been fixed, or does it still require the community's attention? This issue may be closed if no further activity occurs. You may also label this issue as a "Discussion" or add it to the "Backlog" and I will leave it open. Thank you for your contributions. |
Closing this issue after a prolonged period of inactivity. If this issue is still present in the latest release, please feel free to create a new issue with up-to-date information. |
after init react native new version 0.60.0 application crash after open
07-04 16:42:16.737 30259-30317/? E/art: dlopen("/data/data/com.news060/lib-main/libc++_shared.so", RTLD_LAZY) failed: dlopen failed: "/data/data/com.news060/lib-main/libc++_shared.so" is 64-bit instead of 32-bit
07-04 16:42:16.737 30259-30317/? E/SoLoader: couldn't find DSO to load: libc++_shared.so caused by: dlopen failed: "/data/data/com.news060/lib-main/libc++_shared.so" is 64-bit instead of 32-bit
07-04 16:42:16.737 30259-30317/? E/SoLoader: couldn't find DSO to load: libglog.so caused by: couldn't find DSO to load: libc++_shared.so caused by: dlopen failed: "/data/data/com.news060/lib-main/libc++_shared.so" is 64-bit instead of 32-bit
07-04 16:42:16.737 30259-30317/? E/SoLoader: couldn't find DSO to load: libglog_init.so caused by: couldn't find DSO to load: libglog.so caused by: couldn't find DSO to load: libc++_shared.so caused by: dlopen failed: "/data/data/com.news060/lib-main/libc++_shared.so" is 64-bit instead of 32-bit
07-04 16:42:16.737 30259-30317/? E/SoLoader: couldn't find DSO to load: libreactnativejni.so caused by: couldn't find DSO to load: libglog_init.so caused by: couldn't find DSO to load: libglog.so caused by: couldn't find DSO to load: libc++_shared.so caused by: dlopen failed: "/data/data/com.news060/lib-main/libc++_shared.so" is 64-bit instead of 32-bit
FATAL EXCEPTION: create_react_context
Process: com.news060, PID: 30259
java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libreactnativejni.so caused by: couldn't find DSO to load: libglog_init.so caused by: couldn't find DSO to load: libglog.so caused by: couldn't find DSO to load: libc++_shared.so caused by: dlopen failed: "/data/data/com.news060/lib-main/libc++_shared.so" is 64-bit instead of 32-bit
at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:738)
at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:591)
at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:529)
at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:484)
at com.facebook.react.bridge.ReactBridge.staticInit(ReactBridge.java:31)
at com.facebook.react.bridge.NativeMap.(NativeMap.java:19)
at com.facebook.react.jscexecutor.JSCExecutorFactory.create(JSCExecutorFactory.java:25)
at com.facebook.react.ReactInstanceManager$5.run(ReactInstanceManager.java:949)
at java.lang.Thread.run(Thread.java:818)
Environment:
React Native Version 0.60.0
OS: Mac OS Mojave 10.14.4
Android Studio: Version 3.4.1
Android Device Oppo r7s 5.1.1 (os 32bit)
Steps To Reproduce
1.Init React Native 0.60.0
2.react-native run-android on real device oppo r7s 5.1.1 (os 32bit) app crash
The text was updated successfully, but these errors were encountered: