Closed nes123 closed 5 years ago
Did you confirm that it does not crash on sdk <=19...I made similar changes but yet it crashes..
@nes123 Have you tried with a newer SDK, and does it work? If you do need to continue using older SDKs, please submit a PR. Thanks!
I released react native app to production and notice that users that have android phones with sdk<=19 experience crashes. You can see the crash report for sdk=19 at my original post.
happen to me as well in emulator pixel with api 27
same issue with app in production and also reproduced in emulator.
I tested 98d927d in a JellyBean emulator and it appears to be working. It'll be part of the next release we're currently trying to get out.
@willholen Would it be possible to deploy the fix (0.1.1) on the hermesvm package so we can overwrite it in our own package.json file while we wait for a new react-native release?
Currently 0.1.0 is the latest here: https://www.npmjs.com/package/hermesvm
@thomasonweb npm package was renamed to hermes-engine (0.1.1 is released)
"Hello World" app built by version 0.1.1 crashes on all devices, Will be any fix for that? RN: 0.60.4 Hermes Engine: 0.1.1
@javadi69 can you please open a new issue for this report? Also, please include the stack trace and a few lines before it from logcat. Thanks!
@mhorowitz It wasn't hermes issue. with a little more changes in app/build.gradle it works now. This comment from RN page helped me: https://github.com/facebook/react-native/issues/25599#issuecomment-517007933
I uploaded to Google Play and they apparently run some automated tests on their device leading to many crashes like this:
Fatal Exception: java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libhermes.so
at com.facebook.soloader.SoLoader.doLoadLibraryBySoName + 738(SoLoader.java:738)
at com.facebook.soloader.SoLoader.loadLibraryBySoName + 591(SoLoader.java:591)
at com.facebook.soloader.SoLoader.loadLibrary + 529(SoLoader.java:529)
at com.facebook.soloader.SoLoader.loadLibrary + 484(SoLoader.java:484)
at com.facebook.hermes.reactexecutor.HermesExecutor.<clinit> + 20(HermesExecutor.java:20)
at com.facebook.hermes.reactexecutor.HermesExecutorFactory.create + 27(HermesExecutorFactory.java:27)
at com.facebook.react.ReactInstanceManager$5.run + 949(ReactInstanceManager.java:949)
at java.lang.Thread.run + 818(Thread.java:818)
They all happen on Android 6.0.1. Shouldn't this be supported as it is API version 23 ?
@taschik Can you check of #76 is the same as your issue, and open a new issue if not? Thanks!
@mhorowitz it is not the same since my hermes is deactivated. Created a new ticket under https://github.com/facebook/hermes/issues/78
@nes123 Hello! Are you sure that it doesnt work for sdk version <= 19? Because I am facing a crash after building the apk for sdk version 19. The app crashes on startup.
Hi, I tested the "react init app" on my "Yotaphone 2" with android 4.4.3 and also crashes on startup (only crashes with Hermes)
Some system specs:
The adb logcat:
I/Timeline( 1475): Timeline: Activity_launch_request id:com.lingbern60 time:114904596 I/ActivityManager( 1061): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.lingbern60/.MainActivity (has extras)} from pid 1475 D/BackScreenManager( 1783): makeDefaultAppInMirroring com.google.android.googlequicksearchbox D/HWComposerMediator( 1783): postCommand 0x10101010 I/ActivityManager( 1061): Start proc com.lingbern60 for activity com.lingbern60/.MainActivity: pid=24343 uid=10315 gids={50315, 3003} D/dalvikvm(24343): Late-enabling CheckJNI D/dalvikvm(24343): DexOpt: couldn't find field Landroid/content/pm/ApplicationInfo;.splitSourceDirs W/dalvikvm(24343): VFY: unable to resolve instance field 37 D/dalvikvm(24343): VFY: replacing opcode 0x54 at 0x010d D/dalvikvm(24343): DexOpt: couldn't find field Landroid/content/pm/ApplicationInfo;.splitSourceDirs I/dalvikvm(24343): DexOpt: unable to optimize instance field ref 0x0025 at 0x11b in Lcom/facebook/soloader/SoLoader;.initSoSources D/SoLoader(24343): init start D/SoLoader(24343): adding system library source: /vendor/lib D/SoLoader(24343): adding system library source: /system/lib D/SoLoader(24343): adding application source: com.facebook.soloader.DirectorySoSource[root = /data/app-lib/com.lingbern60-2 flags = 0] D/SoLoader(24343): adding backup source from : com.facebook.soloader.ApkSoSource[root = /data/data/com.lingbern60/lib-main flags = 1] D/SoLoader(24343): Preparing SO source: com.facebook.soloader.DirectorySoSource[root = /system/lib flags = 2] D/SoLoader(24343): Preparing SO source: com.facebook.soloader.DirectorySoSource[root = /system/vendor/lib flags = 2] D/SoLoader(24343): Preparing SO source: com.facebook.soloader.DirectorySoSource[root = /data/app-lib/com.lingbern60-2 flags = 0] D/SoLoader(24343): Preparing SO source: com.facebook.soloader.ApkSoSource[root = /data/data/com.lingbern60/lib-main flags = 1] V/fb-UnpackingSoSource(24343): locked dso store /data/data/com.lingbern60/lib-main I/fb-UnpackingSoSource(24343): dso store is up-to-date: /data/data/com.lingbern60/lib-main V/fb-UnpackingSoSource(24343): releasing dso store lock for /data/data/com.lingbern60/lib-main D/SoLoader(24343): init finish: 4 SO sources prepared D/SoLoader(24343): init exiting
@zicrox Is that where the log ends? It doesn't seem to mention any problem or crash.
@willholen you are right the "logcat" is huge but I find the "FATAL EXCEPTION" section at the end, tell me if you need more details.
I/dalvikvm(14818): Failed resolving Landroidx/core/view/ViewCompat$OnUnhandledKeyEventListenerWrapper; interface 488 'Landroid/view/View$OnUnhandledKeyEventListener;'
W/dalvikvm(14818): Link of class 'Landroidx/core/view/ViewCompat$OnUnhandledKeyEventListenerWrapper;' failed
D/dalvikvm(14818): DexOpt: unable to opt direct call 0x2a9c at 0x1d in Landroidx/core/view/ViewCompat;.addOnUnhandledKeyEventListener
D/dalvikvm(14818): DexOpt: unable to opt direct call 0x0a0a at 0x14 in Landroidx/core/view/ViewCompat;.dispatchApplyWindowInsets
D/dalvikvm(14818): DexOpt: unable to opt direct call 0x0a0a at 0x14 in Landroidx/core/view/ViewCompat;.onApplyWindowInsets
I/dalvikvm(14818): Failed resolving Landroidx/core/view/ViewCompat$1; interface 478 'Landroid/view/View$OnApplyWindowInsetsListener;'
W/dalvikvm(14818): Link of class 'Landroidx/core/view/ViewCompat$1;' failed
D/dalvikvm(14818): DexOpt: unable to opt direct call 0x2a99 at 0x0f in Landroidx/core/view/ViewCompat;.setOnApplyWindowInsetsListener
D/BackScreenManager( 1783): improveAppInMirroring com.lingbern60
D/ReactNative(14818): ReactInstanceManager.recreateReactContextInBackgroundFromBundleLoader()
D/ReactNative(14818): ReactInstanceManager.recreateReactContextInBackground()
D/ReactNative(14818): ReactInstanceManager.runCreateReactContextOnNewThread()
D/SoLoader(14818): About to load: libhermes.so
D/SoLoader(14818): libhermes.so not found on /data/data/com.lingbern60/lib-main
D/SoLoader(14818): libhermes.so found on /data/app-lib/com.lingbern60-1
D/SoLoader(14818): Not resolving dependencies for libhermes.so
D/dalvikvm(14818): Trying to load lib /data/app-lib/com.lingbern60-1/libhermes.so 0x425fc2f8
W/unknown:ReactNative(14818): Packager connection already open, nooping.
E/dalvikvm(14818): dlopen("/data/app-lib/com.lingbern60-1/libhermes.so") failed: dlopen failed: cannot locate symbol "sigemptyset" referenced by "libhermes.so"...
E/SoLoader(14818): couldn't find DSO to load: libhermes.so caused by: dlopen failed: cannot locate symbol "sigemptyset" referenced by "libhermes.so"...
W/dalvikvm(14818): Exception Ljava/lang/UnsatisfiedLinkError; thrown while initializing Lcom/facebook/hermes/reactexecutor/HermesExecutor;
W/dalvikvm(14818): threadid=17: thread exiting with uncaught exception (group=0x415a0d58)
E/AndroidRuntime(14818): FATAL EXCEPTION: create_react_context
E/AndroidRuntime(14818): Process: com.lingbern60, PID: 14818
E/AndroidRuntime(14818): java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libhermes.so caused by: dlopen failed: cannot locate symbol "sigemptyset" referenced by "libhermes.so"...
E/AndroidRuntime(14818): at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:738)
E/AndroidRuntime(14818): at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:591)
E/AndroidRuntime(14818): at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:529)
E/AndroidRuntime(14818): at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:484)
E/AndroidRuntime(14818): at com.facebook.hermes.reactexecutor.HermesExecutor.<clinit>(HermesExecutor.java:20)
E/AndroidRuntime(14818): at com.facebook.hermes.reactexecutor.HermesExecutorFactory.create(HermesExecutorFactory.java:27)
E/AndroidRuntime(14818): at com.facebook.react.ReactInstanceManager$5.run(ReactInstanceManager.java:949)
E/AndroidRuntime(14818): at java.lang.Thread.run(Thread.java:841)
I/Adreno-EGL(14818): <qeglDrvAPI_eglInitialize:410>: EGL 1.4 QUALCOMM build: ()
I/Adreno-EGL(14818): OpenGL ES Shader Compiler Version: E031.24.00.15
I/Adreno-EGL(14818): Build Date: 09/04/14 Thu
I/Adreno-EGL(14818): Local Branch: 3522.au034
I/Adreno-EGL(14818): Remote Branch:
I/Adreno-EGL(14818): Local Patches:
I/Adreno-EGL(14818): Reconstruct Branch:
W/ActivityManager( 1061): Force finishing activity com.lingbern60/.MainActivity
W/unknown:ReconnectingWebSocket(14818): Couldn't connect to "ws://localhost:8081/message?device=YD206%20-%204.4.3%20-%20API%2019&app=com.lingbern60&clientid=DevSupportManagerImpl", will silently retry
D/OpenGLRenderer(14818): Enabling debug mode 0
W/unknown:InspectorPackagerConnection(14818): Couldn't connect to packager, will silently retry
W/InputMethodManagerService( 1061): Focus gain on non-focused client com.android.internal.view.IInputMethodClient$Stub$Proxy@43021d48 (uid=10315 pid=14818)
I/Timeline(14818): Timeline: Activity_idle id: android.os.BinderProxy@425f8210 time:125159765
I/WindowManager( 1061): Screenshot max retries 4 of Token{42f3a5b0 ActivityRecord{43b7dbf0 u0 com.lingbern60/.MainActivity t198 f}} appWin=Window{44388610 u0 Starting com.lingbern60} drawState=4
W/WindowManager( 1061): Screenshot failure taking screenshot for (1080x1920) to layer 21015
D/BackScreenManager( 1783): makeDefaultAppInMirroring com.lingbern60
D/HWComposerMediator( 1783): postCommand 0x10101010
D/ACRA-DropBoxEventReceiver( 1463): Error report disabled!
D/BackScreenManager( 1783): improveAppInMirroring com.google.android.googlequicksearchbox
D/dalvikvm(15533): GC_CONCURRENT freed 3057K, 16% free 25884K/30736K, paused 6ms+5ms, total 78ms
I/Timeline( 1475): Timeline: Activity_idle id: android.os.BinderProxy@425fb7c8 time:125160167
D/HWComposerMediator( 1783): 8 bytes sent to hwcomposer
D/qdepd ( 235): cmd[0]=10101010
D/qdepd ( 235): Command CMD_RESET_DEFAULTS
I/Timeline( 1061): Timeline: Activity_windows_visible id: ActivityRecord{42ed68d8 u0 com.google.android.googlequicksearchbox/com.google.android.launcher.GEL t1} time:125160577
Still the same problem..i dont see any change
This made my project work: https://github.com/facebook/react-native/issues/25646#issuecomment-527116145
We are running RN 0.60.5
thats use the Hermes 0.1.1
by default and the problem still the same.
Device:
Error: couldn't find DSO to load: libhermes.so caused by: dlopen failed: cannot locate symbol "posix_fallocate" referenced by "libhermes.so"
Logcat:
09-11 10:11:29.708: I/dalvikvm(11640): Failed resolving Landroidx/core/view/ViewCompat$1; interface 738 'Landroid/view/View$OnApplyWindowInsetsListener;'
09-11 10:11:29.708: W/dalvikvm(11640): Link of class 'Landroidx/core/view/ViewCompat$1;' failed
09-11 10:11:29.708: E/dalvikvm(11640): Could not find class 'androidx.core.view.ViewCompat$1', referenced from method androidx.core.view.ViewCompat.setOnApplyWindowInsetsListener
09-11 10:11:29.708: W/dalvikvm(11640): VFY: unable to resolve new-instance 1687 (Landroidx/core/view/ViewCompat$1;) in Landroidx/core/view/ViewCompat;
09-11 10:11:29.708: D/dalvikvm(11640): VFY: replacing opcode 0x22 at 0x000d
09-11 10:11:29.708: I/dalvikvm(11640): Could not find method android.view.View.setPointerIcon, referenced from method androidx.core.view.ViewCompat.setPointerIcon
09-11 10:11:29.708: W/dalvikvm(11640): VFY: unable to resolve virtual method 4446: Landroid/view/View;.setPointerIcon (Landroid/view/PointerIcon;)V
09-11 10:11:29.708: D/dalvikvm(11640): VFY: replacing opcode 0x6e at 0x0012
09-11 10:11:29.708: I/dalvikvm(11640): Could not find method android.view.View.setScrollIndicators, referenced from method androidx.core.view.ViewCompat.setScrollIndicators
09-11 10:11:29.708: W/dalvikvm(11640): VFY: unable to resolve virtual method 4455: Landroid/view/View;.setScrollIndicators (I)V
09-11 10:11:29.708: D/dalvikvm(11640): VFY: replacing opcode 0x6e at 0x0006
09-11 10:11:29.708: I/dalvikvm(11640): Could not find method android.view.View.setScrollIndicators, referenced from method androidx.core.view.ViewCompat.setScrollIndicators
09-11 10:11:29.708: W/dalvikvm(11640): VFY: unable to resolve virtual method 4456: Landroid/view/View;.setScrollIndicators (II)V
09-11 10:11:29.708: D/dalvikvm(11640): VFY: replacing opcode 0x6e at 0x0006
09-11 10:11:29.708: I/dalvikvm(11640): Could not find method android.view.View.setTooltipText, referenced from method androidx.core.view.ViewCompat.setTooltipText
09-11 10:11:29.708: W/dalvikvm(11640): VFY: unable to resolve virtual method 4463: Landroid/view/View;.setTooltipText (Ljava/lang/CharSequence;)V
09-11 10:11:29.708: D/dalvikvm(11640): VFY: replacing opcode 0x6e at 0x0006
09-11 10:11:29.708: I/dalvikvm(11640): Could not find method android.view.View.setTransitionName, referenced from method androidx.core.view.ViewCompat.setTransitionName
09-11 10:11:29.708: W/dalvikvm(11640): VFY: unable to resolve virtual method 4465: Landroid/view/View;.setTransitionName (Ljava/lang/String;)V
09-11 10:11:29.708: D/dalvikvm(11640): VFY: replacing opcode 0x6e at 0x0006
09-11 10:11:29.708: I/dalvikvm(11640): Could not find method android.view.View.setTranslationZ, referenced from method androidx.core.view.ViewCompat.setTranslationZ
09-11 10:11:29.708: W/dalvikvm(11640): VFY: unable to resolve virtual method 4468: Landroid/view/View;.setTranslationZ (F)V
09-11 10:11:29.708: D/dalvikvm(11640): VFY: replacing opcode 0x6e at 0x0006
09-11 10:11:29.713: I/dalvikvm(11640): Could not find method android.view.View.setZ, referenced from method androidx.core.view.ViewCompat.setZ
09-11 10:11:29.713: W/dalvikvm(11640): VFY: unable to resolve virtual method 4472: Landroid/view/View;.setZ (F)V
09-11 10:11:29.713: D/dalvikvm(11640): VFY: replacing opcode 0x6e at 0x0006
09-11 10:11:29.713: I/dalvikvm(11640): Could not find method android.view.View.startDragAndDrop, referenced from method androidx.core.view.ViewCompat.startDragAndDrop
09-11 10:11:29.713: W/dalvikvm(11640): VFY: unable to resolve virtual method 4475: Landroid/view/View;.startDragAndDrop (Landroid/content/ClipData;Landroid/view/View$DragShadowBuilder;Ljava/lang/Object;I)Z
09-11 10:11:29.713: D/dalvikvm(11640): VFY: replacing opcode 0x6e at 0x0006
09-11 10:11:29.713: I/dalvikvm(11640): Could not find method android.view.View.startNestedScroll, referenced from method androidx.core.view.ViewCompat.startNestedScroll
09-11 10:11:29.713: W/dalvikvm(11640): VFY: unable to resolve virtual method 4476: Landroid/view/View;.startNestedScroll (I)Z
09-11 10:11:29.713: D/dalvikvm(11640): VFY: replacing opcode 0x6e at 0x0006
09-11 10:11:29.713: I/dalvikvm(11640): Could not find method android.view.View.stopNestedScroll, referenced from method androidx.core.view.ViewCompat.stopNestedScroll
09-11 10:11:29.713: W/dalvikvm(11640): VFY: unable to resolve virtual method 4477: Landroid/view/View;.stopNestedScroll ()V
09-11 10:11:29.713: D/dalvikvm(11640): VFY: replacing opcode 0x6e at 0x0006
09-11 10:11:29.713: I/dalvikvm(11640): Could not find method android.view.View.updateDragShadow, referenced from method androidx.core.view.ViewCompat.updateDragShadow
09-11 10:11:29.713: W/dalvikvm(11640): VFY: unable to resolve virtual method 4478: Landroid/view/View;.updateDragShadow (Landroid/view/View$DragShadowBuilder;)V
09-11 10:11:29.713: D/dalvikvm(11640): VFY: replacing opcode 0x6e at 0x0006
09-11 10:11:29.713: I/dalvikvm(11640): Failed resolving Landroidx/core/view/ViewCompat$OnUnhandledKeyEventListenerWrapper; interface 748 'Landroid/view/View$OnUnhandledKeyEventListener;'
09-11 10:11:29.713: W/dalvikvm(11640): Link of class 'Landroidx/core/view/ViewCompat$OnUnhandledKeyEventListenerWrapper;' failed
09-11 10:11:29.713: D/dalvikvm(11640): DexOpt: unable to opt direct call 0x331a at 0x1c in Landroidx/core/view/ViewCompat;.addOnUnhandledKeyEventListener
09-11 10:11:29.713: D/dalvikvm(11640): DexOpt: unable to opt direct call 0x1279 at 0x14 in Landroidx/core/view/ViewCompat;.dispatchApplyWindowInsets
09-11 10:11:29.713: D/dalvikvm(11640): DexOpt: unable to opt direct call 0x1279 at 0x14 in Landroidx/core/view/ViewCompat;.onApplyWindowInsets
09-11 10:11:29.713: I/dalvikvm(11640): Failed resolving Landroidx/core/view/ViewCompat$1; interface 738 'Landroid/view/View$OnApplyWindowInsetsListener;'
09-11 10:11:29.713: W/dalvikvm(11640): Link of class 'Landroidx/core/view/ViewCompat$1;' failed
09-11 10:11:29.713: D/dalvikvm(11640): DexOpt: unable to opt direct call 0x3317 at 0x0f in Landroidx/core/view/ViewCompat;.setOnApplyWindowInsetsListener
09-11 10:11:29.718: E/AndroidRuntime(11640): FATAL EXCEPTION: create_react_context
09-11 10:11:29.718: E/AndroidRuntime(11640): java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libhermes.so caused by: dlopen failed: cannot locate symbol "posix_fallocate" referenced by "libhermes.so"...
09-11 10:11:29.718: E/AndroidRuntime(11640): at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:738)
09-11 10:11:29.718: E/AndroidRuntime(11640): at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:591)
09-11 10:11:29.718: E/AndroidRuntime(11640): at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:529)
09-11 10:11:29.718: E/AndroidRuntime(11640): at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:484)
09-11 10:11:29.718: E/AndroidRuntime(11640): at com.facebook.hermes.reactexecutor.HermesExecutor.<clinit>(HermesExecutor.java:20)
09-11 10:11:29.718: E/AndroidRuntime(11640): at com.facebook.hermes.reactexecutor.HermesExecutorFactory.create(HermesExecutorFactory.java:27)
09-11 10:11:29.718: E/AndroidRuntime(11640): at com.facebook.react.ReactInstanceManager$5.run(ReactInstanceManager.java:949)
09-11 10:11:29.718: E/AndroidRuntime(11640): at java.lang.Thread.run(Thread.java:841)
09-11 10:11:29.733: I/SurfaceFlinger(1935): id=21 createSurf (1x1),1 flag=404, NainActivit
09-11 10:11:29.738: I/GCoreUlr(10267): Starting service, intent=Intent { act=com.google.android.location.reporting.ACTION_UPDATE_WORLD cmp=com.google.android.gms/com.google.android.location.reporting.service.DispatchingService (has extras) }, extras=Bundle[{receiverAction=com.google.gservices.intent.action.GSERVICES_CHANGED}]
09-11 10:11:29.798: I/ActivityManager(2344): Notify an ApplicationCrash
09-11 10:11:29.843: D/dalvikvm(10242): GC_EXPLICIT freed 288K, 27% free 11909K/16116K, paused 12ms+7ms, total 306ms
09-11 10:11:29.883: I/dalvikvm(10267): Could not find method android.app.admin.DevicePolicyManager.getProfileOwner, referenced from method com.google.android.gms.auth.managed.intentoperations.SetupWorkProfileSettingsIntentOperation.a
09-11 10:11:29.883: W/dalvikvm(10267): VFY: unable to resolve virtual method 2484: Landroid/app/admin/DevicePolicyManager;.getProfileOwner ()Landroid/content/ComponentName;
09-11 10:11:29.883: D/dalvikvm(10267): VFY: replacing opcode 0x6e at 0x0029
09-11 10:11:29.898: I/power(2344): *** acquire_dvfs_lock : lockType : 1 freq : 1200000
09-11 10:11:29.898: I/power(2344): *** acquire_dvfs_lock : lockType : 1 freq : 1400000
09-11 10:11:29.898: D/SSRMv2:CustomFrequencyManagerService(2344): releaseDVFSLockLocked : Getting Lock type frm List : DVFS_MIN_LIMIT frequency : 1400000 uid : 1000 pid : 2344 tag : android@2
09-11 10:11:29.898: D/SSRMv2:CustomFrequencyManagerService(2344): acquireDVFSLockLocked : type : DVFS_MIN_LIMIT frequency : 1400000 uid : 1000 pid : 2344 pkgName : android@2
09-11 10:11:29.918: D/libEGL(11640): loaded /system/lib/egl/libEGL_mali.so
09-11 10:11:29.923: D/dalvikvm(2344): GC_CONCURRENT freed 1460K, 38% free 21900K/35152K, paused 10ms+61ms, total 371ms
09-11 10:11:29.928: D/libEGL(11640): loaded /system/lib/egl/libGLESv1_CM_mali.so
09-11 10:11:29.928: W/LicenseLogService(2344): log() is called by non admin
09-11 10:11:29.933: D/libEGL(11640): loaded /system/lib/egl/libGLESv2_mali.so
09-11 10:11:29.933: D/libEGL(11640): [ 09-11 10:11:29.938 11640:11640 E/ ]
09-11 10:11:29.933: D/libEGL(11640): Device driver API match
09-11 10:11:29.933: D/libEGL(11640): Device driver API version: 23
09-11 10:11:29.933: D/libEGL(11640): User space API version: 23
09-11 10:11:29.933: D/libEGL(11640): [ 09-11 10:11:29.938 11640:11640 E/ ]
RN 0.60.5 uses hermes 0.1.0: https://github.com/facebook/react-native/blob/v0.60.5/package.json#L96. The link in the previous comment may help, too.
Look the "^", when run install the version 0.1.1 is picked.
Can you confirm which version is being used? If you built against an earlier version of Hermes, it might not get automatically upgraded by npm/yarn.
Yes, that is from my yarn.lock.
hermesvm@^0.1.0:
version "0.1.1"
resolved "https://registry.yarnpkg.com/hermesvm/-/hermesvm-0.1.1.tgz#bd1df92b4dc504e261c23df34864daf24b844d03"
integrity sha512-EosSDeUqTTGvlc9vQiy5Y/9GBlucEyo6lYuxg/FnukHCD/CP3NYeDAGV54TyZ19FgSqMEoPgOH9cyxvv8epQ1g==
Have you been able to reproduce this problem on other OS versions, or on other devices? Or is it specific to this device/OS combo?
Is it possible for us to download the app, or can you provide a repo with a repro?
This error is reported by PlayStore on the Pre-launch Reports.
Unfortunately I don't have a device on hand to simulate the problem.
This is a new pure React Native app with some dependencies.
{
"name": "my-app",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "react-native start",
"test": "jest",
"lint": "eslint . --cache",
"postinstall": "npx jetify"
},
"dependencies": {
"@react-native-community/async-storage": "1.6.1",
"axios": "0.19.0",
"bluebird": "3.5.5",
"eventemitter3": "4.0.0",
"husky": "3.0.2",
"jwt-decode": "2.2.0",
"moment-timezone": "0.5.26",
"prop-types": "15.7.2",
"react": "16.8.6",
"react-native": "0.60.5",
"react-native-actionsheet": "2.4.2",
"react-native-calendars": "https://github.com/smarppy/react-native-calendars.git#f6bc1677e47759bbb096390ae30e81e296923fbc",
"react-native-device-info": "2.3.2",
"react-native-firebase": "5.5.6",
"react-native-gesture-handler": "1.3.0",
"react-native-keyboard-manager": "4.0.13-12",
"react-native-modal-datetime-picker": "7.5.0",
"react-native-paper": "2.16.0",
"react-native-permissions": "1.2.0",
"react-native-reanimated": "1.1.0",
"react-native-screens": "1.0.0-alpha.22",
"react-native-simple-dialogs": "1.2.0",
"react-native-sound": "0.11.0",
"react-native-splash-screen": "3.2.0",
"react-native-tab-view": "2.9.0",
"react-native-vector-icons": "https://github.com/smarppy/react-native-vector-icons.git#add-fabric-icons",
"react-navigation": "3.11.1",
"react-redux": "7.1.0",
"redux": "4.0.4",
"redux-actions": "2.6.5",
"redux-form": "8.2.5",
"redux-thunk": "2.3.0",
"vanilla-masker": "1.2.0"
},
"devDependencies": {
"@babel/core": "7.5.5",
"@babel/runtime": "7.5.5",
"@react-native-community/eslint-config": "0.0.5",
"babel-eslint": "10.0.2",
"babel-jest": "24.8.0",
"babel-plugin-transform-remove-console": "6.9.4",
"eslint": "6.1.0",
"eslint-config-airbnb": "17.1.1",
"eslint-config-react-native": "4.0.0",
"eslint-plugin-import": "2.18.2",
"eslint-plugin-jsx-a11y": "6.2.3",
"eslint-plugin-react": "7.14.3",
"eslint-plugin-react-native": "3.7.0",
"jest": "24.8.0",
"jetifier": "1.6.4",
"metro-react-native-babel-preset": "0.56.0",
"react-test-renderer": "16.8.6"
},
"jest": {
"preset": "react-native"
}
}
There are a lot of dependencies in there which aren't in the basic react-native init
template. My best guess is one of the dependencies is causing the problem somehow. I would suggest bisecting the dependencies and trying to identify which is causing the failure. I'm sorry I don't have a better answer, but without a repro, I don't have any more specific suggestions.
@mhorowitz @douglasjunior I think maybe you missed an important detail in upgrading Hermes.
Hermes changed its npm name. It isn't hermes-vm anymore, but hermes-engine . That's why I started out my earlier comment by mentioning the yarn command:
yarn add hermes-engine --dev
When you do this, you will have both hermes-vm and hermes-engine modules in your node_modules folder (as RN 0.60.5 still mentions hermes-vm). However, after you change the paths in build.gradle to point to hermes-engine instead, the compiler will link to the corrected engine (hermes-vm, at that point, should just be dead code), and you should be sailing smoothly from then on.
Cheers!
@jsaraiva Thanks, you are a lifesaver.
@jsaraiva THX SO MUCH MAN! This was it (I upgraded from 60.4 to 60.5 and ran into this)
has same issue on android 4 when hermes is disabled
Fatal Exception: java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libhermes.so caused by: dlopen failed: cannot locate symbol "posix_fallocate" referenced by "libhermes.so"... at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java) at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java) at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java) at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java) at com.facebook.hermes.reactexecutor.HermesExecutor.() at com.facebook.hermes.reactexecutor.HermesExecutorFactory.create(HermesExecutorFactory.java) at com.facebook.react.ReactInstanceManager$5.run(ReactInstanceManager.java) at java.lang.Thread.run + 841(Thread.java:841)