Skip to content

[Android] Crash On Startup Using New Arch + Hermes #34237

Closed
@Kesmek

Description

@Kesmek

Description

When creating a fresh react native project from the template using npx react-native init test --template react-native-template-typescript, and changing the appropriate flags in android/app/build.gradle to enable hermes and in android/gradle.properties to enable the new arch, the app crashes on startup. It builds fine but on startup it crashes with these errors from adb:

07-21 12:42:57.766 21292 21292 E SoLoader: couldn't find DSO to load: libjscexecutor.so
07-21 12:42:57.766 21292 21292 E SoLoader:      SoSource 0: com.facebook.soloader.ApkSoSource[root = /data/data/com.fabrictest/lib-main flags = 1]
07-21 12:42:57.766 21292 21292 E SoLoader:      SoSource 1: com.facebook.soloader.DirectorySoSource[root = /data/app/~~ul_lgralUfnyZ42Uxxpc4A==/com.fabrictest-Jq3mxwJAF96KnxdAWSAlxA==/lib/arm64 flags = 0]
07-21 12:42:57.766 21292 21292 E SoLoader:      SoSource 2: com.facebook.soloader.DirectorySoSource[root = /system/lib64 flags = 2]
07-21 12:42:57.766 21292 21292 E SoLoader:      SoSource 3: com.facebook.soloader.DirectorySoSource[root = /vendor/lib64 flags = 2]
07-21 12:42:57.766 21292 21292 E SoLoader:      Native lib dir: /data/app/~~ul_lgralUfnyZ42Uxxpc4A==/com.fabrictest-Jq3mxwJAF96KnxdAWSAlxA==/lib/arm64
07-21 12:42:57.766 21292 21292 E SoLoader:  result: 0
07-21 12:42:57.920 21292 21292 E unknown:ReactRootView: Unable to update root layout specs for ReactRootView: no rootViewTag set yet
07-21 12:42:58.289  2744 21351 E CastSocket: [TcpProberDeviceController-1] Failed to shutdown the output stream socket: tpt@a70e7cc.
07-21 12:42:58.289  2744 21351 E CastSocket: java.nio.channels.ClosedChannelException
07-21 12:42:58.289  2744 21351 E CastSocket:    at sun.nio.ch.SocketChannelImpl.shutdownOutput(SocketChannelImpl.java:842)
07-21 12:42:58.289  2744 21351 E CastSocket:    at sun.nio.ch.SocketAdaptor.shutdownOutput(SocketAdaptor.java:424)
07-21 12:42:58.289  2744 21351 E CastSocket:    at tor.l(:com.google.android.gms@[email protected] (190400-461192076):4)
07-21 12:42:58.289  2744 21351 E CastSocket:    at tox.c(:com.google.android.gms@[email protected] (190400-461192076):46)
07-21 12:42:58.289  2744 21351 E CastSocket:    at tow.run(:com.google.android.gms@[email protected] (190400-461192076):2)
07-21 12:42:58.289  2744 21351 E CastSocket:    at java.lang.Thread.run(Thread.java:920)
07-21 12:42:58.290  2744 21199 E TcpProberDeviceController: [TcpProberDeviceController-1] onSocketConnectionFailed. Error: 2
07-21 12:42:59.438  2174  2950 E bt_btm  : system/bt/main/bte_logmsg.cc:191 LogMsg: BTM_BleObserve Observe Already Active
07-21 12:43:00.454 21292 21353 I ReactNativeJS: Running "fabricTest" with {"fabric":true,"initialProps":{"concurrentRoot":true},"rootTag":1}
07-21 12:43:00.720 21292 21292 E AndroidRuntime: Error reporting crash
07-21 12:43:00.720 21292 21292 E AndroidRuntime: java.lang.OutOfMemoryError: Failed to allocate a 320734176 byte allocation with 25165824 free bytes and 251MB until OOM, target footprint 30041136, growth limit 268435456
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at java.util.Arrays.copyOf(Arrays.java:3257)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at java.lang.AbstractStringBuilder.ensureCapacityInternal(AbstractStringBuilder.java:124)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:448)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at java.lang.StringBuilder.append(StringBuilder.java:137)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at java.lang.Throwable.toString(Throwable.java:493)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at java.lang.String.valueOf(String.java:2924)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at java.io.PrintWriter.println(PrintWriter.java:754)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at java.lang.Throwable$WrappedPrintWriter.println(Throwable.java:778)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at java.lang.Throwable.printStackTrace(Throwable.java:667)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at java.lang.Throwable.printStackTrace(Throwable.java:735)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at android.app.ApplicationErrorReport$CrashInfo.<init>(ApplicationErrorReport.java:354)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at android.app.ApplicationErrorReport$ParcelableCrashInfo.<init>(ApplicationErrorReport.java:484)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at com.android.internal.os.RuntimeInit$KillApplicationHandler.uncaughtException(RuntimeInit.java:157)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1073)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1068)
07-21 12:43:00.720 21292 21292 E AndroidRuntime:        at java.lang.Thread.dispatchUncaughtException(Thread.java:2200)

Version

0.69.2

Output of npx react-native info

System:
    OS: Linux 5.18 undefined
    CPU: (16) x64 AMD Ryzen 7 3700X 8-Core Processor
    Memory: 17.64 GB / 31.27 GB
    Shell: 5.1.16 - /bin/bash
  Binaries:
    Node: 18.6.0 - /usr/bin/node
    Yarn: 1.22.19 - /usr/bin/yarn
    npm: 8.14.0 - /usr/bin/npm
    Watchman: Not Found
  SDKs:
    Android SDK: Not Found
  IDEs:
    Android Studio: AI-212.5712.43.2112.8609683
  Languages:
    Java: 18.0.2 - /usr/bin/javac
  npmPackages:
    @react-native-community/cli: Not Found
    react: 18.0.0 => 18.0.0 
    react-native: 0.69.2 => 0.69.2 
  npmGlobalPackages:
    *react-native*: Not Found

Steps to reproduce

  1. Init a new project with npx react-native init test --template react-native-template-typescript.
  2. Set enableHermes: true, in android/app/build.gradle.
  3. Set newArchEnabled=true in android/gradle.properties.
  4. Run yarn install; yarn android.
  5. App will crash on startup.

Snack, code example, screenshot, or link to a repository

Follow the reproduction steps to initialize a fresh project that will crash as mentioned above.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions