wix / Detox

Gray box end-to-end testing and automation framework for mobile apps
https://wix.github.io/Detox/
MIT License
11.23k stars 1.92k forks source link

Tests fail with error "java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libjscexecutor.so" #3487

Closed michalgrzegor closed 2 years ago

michalgrzegor commented 2 years ago

What happened?

After upgrading react-native to version 0.68.2 from 0.63.4, the tests fail. The built application works. The error that is thrown by the tests is:

DetoxRuntimeError: Failed to run application on the device

    HINT: Most likely, your tests have timed out and called detox.cleanup() while it was waiting for "ready" message (over WebSocket) from the instrumentation process.

      3 | describe('Example', () => {
      4 |   beforeAll(async () => {
    > 5 |     await device.launchApp()
        |                  ^
      6 |   })
      7 |

      at onboarding.e2e.ts:5:18
      at onboarding.e2e.ts:8:71
      at Object.<anonymous>.__awaiter (onboarding.e2e.ts:4:12)
      at Object.<anonymous> (onboarding.e2e.ts:4:24)

By reading the more detailed logs, we find that the following command causes an error:

13:13:09.324 detox[105379] DEBUG: [SPAWN_CMD, #27, cpid=105524] /home/user/Library/Android/sdk/platform-tools/adb -s emulator-14004 shell am instrument -w -r -e detoxServer ws://localhost:39081 -e detoxSessionId d6ae8bef-12df-0b4e-4336-c96d21b681d9 -e debug false com.revelator.originalworks.test/androidx.test.runner.AndroidJUnitRunner
13:13:10.443 detox[105379] DEBUG: [SPAWN_END, #27, cpid=105524] /home/user/Library/Android/sdk/platform-tools/adb -s emulator-14004 shell am instrument -w -r -e detoxServer ws://localhost:39081 -e detoxSessionId d6ae8bef-12df-0b4e-4336-c96d21b681d9 -e debug false com.revelator.originalworks.test/androidx.test.runner.AndroidJUnitRunner exited with code #0

adb shell output:

 detoxSessionId d6ae8bef-12df-0b4e-4336-c96d21b681d9 -e debug false com.revelator.originalworks.test/androidx.test.runner.AndroidJUnitRunner                                                                     <
INSTRUMENTATION_RESULT: shortMsg=Process crashed.
INSTRUMENTATION_CODE: 0

These are logs from adb logcat. This is the error part.

logs: ``` 07-14 15:31:24.634 19982 19982 E SoLoader: couldn't find DSO to load: libhermes.so 07-14 15:31:24.634 19982 19982 E SoLoader: SoSource 0: com.facebook.soloader.DirectorySoSource[root = /data/app/~~uSoN9VPkk1WOrWDuOLHKBA==/com.revelator.originalworks-JByrEhVwC7zOOGW0bGmoXg==/lib/x86_64 flags = 0] 07-14 15:31:24.634 19982 19982 E SoLoader: SoSource 1: com.facebook.soloader.DirectApkSoSource[root = /data/app/~~_40r519kmaU-M2cpDflLfQ==/com.revelator.originalworks.test-iZJ33nB4_UiufyC2njdQTg==/base.apk!/lib/x86_64] 07-14 15:31:24.634 19982 19982 E SoLoader: SoSource 2: com.facebook.soloader.DirectorySoSource[root = /system/lib64 flags = 2] 07-14 15:31:24.634 19982 19982 E SoLoader: SoSource 3: com.facebook.soloader.DirectorySoSource[root = /vendor/lib64 flags = 2] 07-14 15:31:24.634 19982 19982 E SoLoader: Native lib dir: /data/app/~~uSoN9VPkk1WOrWDuOLHKBA==/com.revelator.originalworks-JByrEhVwC7zOOGW0bGmoXg==/lib/x86_64 07-14 15:31:24.634 19982 19982 E SoLoader: result: 0 07-14 15:31:24.635 19982 19982 W System.err: java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libhermes.so 07-14 15:31:24.635 19982 19982 W System.err: SoSource 0: com.facebook.soloader.DirectorySoSource[root = /data/app/~~uSoN9VPkk1WOrWDuOLHKBA==/com.revelator.originalworks-JByrEhVwC7zOOGW0bGmoXg==/lib/x86_64 flags = 0] 07-14 15:31:24.635 19982 19982 W System.err: SoSource 1: com.facebook.soloader.DirectApkSoSource[root = /data/app/~~_40r519kmaU-M2cpDflLfQ==/com.revelator.originalworks.test-iZJ33nB4_UiufyC2njdQTg==/base.apk!/lib/x86_64] 07-14 15:31:24.635 19982 19982 W System.err: SoSource 2: com.facebook.soloader.DirectorySoSource[root = /system/lib64 flags = 2] 07-14 15:31:24.635 19982 19982 W System.err: SoSource 3: com.facebook.soloader.DirectorySoSource[root = /vendor/lib64 flags = 2] 07-14 15:31:24.635 19982 19982 W System.err: Native lib dir: /data/app/~~uSoN9VPkk1WOrWDuOLHKBA==/com.revelator.originalworks-JByrEhVwC7zOOGW0bGmoXg==/lib/x86_64 07-14 15:31:24.635 19982 19982 W System.err: result: 0 07-14 15:31:24.635 19982 19982 W System.err: at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:1098) 07-14 15:31:24.635 19982 19982 W System.err: at com.facebook.soloader.SoLoader.loadLibraryBySoNameImpl(SoLoader.java:914) 07-14 15:31:24.635 19982 19982 W System.err: at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:826) 07-14 15:31:24.635 19982 19982 W System.err: at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:773) 07-14 15:31:24.635 19982 19982 W System.err: at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:743) 07-14 15:31:24.635 19982 19982 W System.err: at com.facebook.hermes.reactexecutor.HermesExecutor.loadLibrary(HermesExecutor.java:25) 07-14 15:31:24.635 19982 19982 W System.err: at com.facebook.hermes.reactexecutor.HermesExecutor.(HermesExecutor.java:19) 07-14 15:31:24.635 19982 19982 W System.err: at com.facebook.hermes.reactexecutor.HermesExecutor.loadLibrary(HermesExecutor.java:23) 07-14 15:31:24.635 19982 19982 W System.err: at com.facebook.react.ReactInstanceManagerBuilder.getDefaultJSExecutorFactory(ReactInstanceManagerBuilder.java:369) 07-14 15:31:24.635 19982 19982 W System.err: at com.facebook.react.ReactInstanceManagerBuilder.build(ReactInstanceManagerBuilder.java:318) 07-14 15:31:24.635 19982 19982 W System.err: at com.facebook.react.ReactNativeHost.createReactInstanceManager(ReactNativeHost.java:95) 07-14 15:31:24.635 19982 19982 W System.err: at com.facebook.react.ReactNativeHost.getReactInstanceManager(ReactNativeHost.java:42) 07-14 15:31:24.635 19982 19982 W System.err: at com.revelator.originalworks.MainApplication.onCreate(MainApplication.java:55) 07-14 15:31:24.635 19982 19982 W System.err: at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1192) 07-14 15:31:24.635 19982 19982 W System.err: at androidx.test.runner.MonitoringInstrumentation.callApplicationOnCreate(MonitoringInstrumentation.java:442) 07-14 15:31:24.635 19982 19982 W System.err: at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6712) 07-14 15:31:24.635 19982 19982 W System.err: at android.app.ActivityThread.access$1300(ActivityThread.java:237) 07-14 15:31:24.635 19982 19982 W System.err: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1913) 07-14 15:31:24.635 19982 19982 W System.err: at android.os.Handler.dispatchMessage(Handler.java:106) 07-14 15:31:24.635 19982 19982 W System.err: at android.os.Looper.loop(Looper.java:223) 07-14 15:31:24.635 19982 19982 W System.err: at android.app.ActivityThread.main(ActivityThread.java:7656) 07-14 15:31:24.635 19982 19982 W System.err: at java.lang.reflect.Method.invoke(Native Method) 07-14 15:31:24.635 19982 19982 W System.err: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) 07-14 15:31:24.635 19982 19982 W System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) 07-14 15:31:24.635 19982 19982 D AndroidRuntime: Shutting down VM 07-14 15:31:24.636 19982 19982 E AndroidRuntime: FATAL EXCEPTION: main 07-14 15:31:24.636 19982 19982 E AndroidRuntime: Process: com.revelator.originalworks, PID: 19982 07-14 15:31:24.636 19982 19982 E AndroidRuntime: java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libjscexecutor.so 07-14 15:31:24.636 19982 19982 E AndroidRuntime: SoSource 0: com.facebook.soloader.DirectorySoSource[root = /data/app/~~uSoN9VPkk1WOrWDuOLHKBA==/com.revelator.originalworks-JByrEhVwC7zOOGW0bGmoXg==/lib/x86_64 flags = 0] 07-14 15:31:24.636 19982 19982 E AndroidRuntime: SoSource 1: com.facebook.soloader.DirectApkSoSource[root = /data/app/~~_40r519kmaU-M2cpDflLfQ==/com.revelator.originalworks.test-iZJ33nB4_UiufyC2njdQTg==/base.apk!/lib/x86_64] 07-14 15:31:24.636 19982 19982 E AndroidRuntime: SoSource 2: com.facebook.soloader.DirectorySoSource[root = /system/lib64 flags = 2] 07-14 15:31:24.636 19982 19982 E AndroidRuntime: SoSource 3: com.facebook.soloader.DirectorySoSource[root = /vendor/lib64 flags = 2] 07-14 15:31:24.636 19982 19982 E AndroidRuntime: Native lib dir: /data/app/~~uSoN9VPkk1WOrWDuOLHKBA==/com.revelator.originalworks-JByrEhVwC7zOOGW0bGmoXg==/lib/x86_64 07-14 15:31:24.636 19982 19982 E AndroidRuntime: result: 0 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:1098) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.facebook.soloader.SoLoader.loadLibraryBySoNameImpl(SoLoader.java:914) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:826) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:773) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:743) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.facebook.react.jscexecutor.JSCExecutor.loadLibrary(JSCExecutor.java:24) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.facebook.react.jscexecutor.JSCExecutor.(JSCExecutor.java:20) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.facebook.react.jscexecutor.JSCExecutor.loadLibrary(Unknown Source:0) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.facebook.react.ReactInstanceManagerBuilder.getDefaultJSExecutorFactory(ReactInstanceManagerBuilder.java:351) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.facebook.react.ReactInstanceManagerBuilder.build(ReactInstanceManagerBuilder.java:318) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.facebook.react.ReactNativeHost.createReactInstanceManager(ReactNativeHost.java:95) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.facebook.react.ReactNativeHost.getReactInstanceManager(ReactNativeHost.java:42) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.revelator.originalworks.MainApplication.onCreate(MainApplication.java:55) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1192) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at androidx.test.runner.MonitoringInstrumentation.callApplicationOnCreate(MonitoringInstrumentation.java:442) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6712) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at android.app.ActivityThread.access$1300(ActivityThread.java:237) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1913) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at android.os.Looper.loop(Looper.java:223) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7656) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) 07-14 15:31:24.636 19982 19982 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) 07-14 15:31:24.636 19982 19982 E AndroidJUnitRunner: An unhandled exception was thrown by the app. 07-14 15:31:24.638 19982 19982 E InstrumentationResultPrinter: Failed to mark test No Tests as finished after process crash 07-14 15:31:24.638 19982 19982 I AndroidJUnitRunner: Bringing down the entire Instrumentation process. ```

Setup ./android/build.gradle: https://pastebin.com/raw/kFP9SvkV ./android/app/build.gradle: https://pastebin.com/raw/AdYvm1tC DetoxTest.java: https://pastebin.com/raw/V8vZMt6E

What was the expected behaviour?

No response

Was it tested on latest Detox?

Did your test throw out a timeout?

Help us reproduce this issue!

No response

In what environment did this happen?

Detox version: 19.6.9 React Native version: 0.68.2 Node version: 12.21 Device model: Nexus_5X_API_R Android version: 11 Test-runner (select one): jest+jasmine

Detox logs

https://pastebin.com/raw/2Z6s7bYj

Device logs

https://pastebin.com/raw/PHwrUEMY

More data, please!

No response

ceharsh24 commented 2 years ago

I am facing a similar issue. I upgraded my app to 0.68.2 RN and got the same error.

kowalski commented 2 years ago

oh, I'm so glad we're not the only ones!

hanno-jonlay commented 2 years ago

Also glad to have company!

We have the same java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libjscexecutor.so error on multiple machines.

I have found that the issue with libjscexecutor.so only causes an error and a crash when Detox is trying to open the app on the AVD (i.e. (device.launchApp()):

  1. When I open the compiled version of the app that Detox was choking on myself, in the same AVD, it runs fine.
  2. When I run the usual yarn react-native run-android (i.e. a standard Debug build, not with Detox), I also see the same libjscexecutor.so message in adb logcat, but it does not show as an error and does not cause the app to crash.
  3. Our tests run fine on our CI. This might be because we run those on a Release build, not a Debug build.

I unfortunately don't have any suggestions for a fix, but happy to try anything that the Detox team might recommend and report back. It would definitely be nice to get our tests running locally again!

To replicate

The Detox crash:

  1. Run detox build --configuration android.emu.debug && detox test --configuration android.emu.debug
  2. Detox successfully builds the app.
  3. Detox loads the app onto the AVD, but then immediately reports that the test has failed. I never see the app attempting to open in the GUI - there was no "flash" as the app is launched. It seems to crash before the splash screen even appears.
  4. adb logcat output shows the java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libjscexecutor.so error that @michalgrzegor reported. See my adb logcat - detox.txt

And then:

  1. Either run detox test --configuration android.emu.debug again, and cancel the script after it loads the .apk onto the AVD, or manually drop the .apk into the AVD.
  2. Tap to open the app.
  3. The app launches. When I adb logcat for this manual launch, I can see that the same libjscexecutor.so not found message is shown, but it doesn't seem to cause a crash. See adb logcat - manual.txt and:
07-16 17:16:55.753  7442  7442 D SoLoader: libjscexecutor.so not found on /data/app/~~R_UhU_1E1n0LFIT1zQeYTQ==/com.helloworld.redactedappname.debug-5imjrLF19cwQO_5Hhif2dA==/lib/x86_64
07-16 17:16:55.753  7442  7442 D SoLoader: libjscexecutor.so not found on /data/app/~~R_UhU_1E1n0LFIT1zQeYTQ==/com.helloworld.redactedappname.debug-5imjrLF19cwQO_5Hhif2dA==/base.apk!/lib/x86_64
07-16 17:16:55.753  7442  7442 D SoLoader: libjscexecutor.so not found on /system/lib64
07-16 17:16:55.753  7442  7442 D SoLoader: libjscexecutor.so not found on /vendor/lib64
07-16 17:16:55.755  7442  7442 E SoLoader: couldn't find DSO to load: libjscexecutor.so
07-16 17:16:55.755  7442  7442 E SoLoader:  SoSource 0: com.facebook.soloader.DirectorySoSource[root = /data/app/~~R_UhU_1E1n0LFIT1zQeYTQ==/com.helloworld.redactedappname.debug-5imjrLF19cwQO_5Hhif2dA==/lib/x86_64 flags = 0]
07-16 17:16:55.755  7442  7442 E SoLoader:  SoSource 1: com.facebook.soloader.DirectApkSoSource[root = /data/app/~~R_UhU_1E1n0LFIT1zQeYTQ==/com.helloworld.redactedappname.debug-5imjrLF19cwQO_5Hhif2dA==/base.apk!/lib/x86_64]
07-16 17:16:55.755  7442  7442 E SoLoader:  SoSource 2: com.facebook.soloader.DirectorySoSource[root = /system/lib64 flags = 2]
07-16 17:16:55.755  7442  7442 E SoLoader:  SoSource 3: com.facebook.soloader.DirectorySoSource[root = /vendor/lib64 flags = 2]
07-16 17:16:55.755  7442  7442 E SoLoader:  Native lib dir: /data/app/~~R_UhU_1E1n0LFIT1zQeYTQ==/com.helloworld.redactedappname.debug-5imjrLF19cwQO_5Hhif2dA==/lib/x86_64
07-16 17:16:55.755  7442  7442 E SoLoader:  result: 0

Environment

I've tried this in a bunch of different environments and versions of RN. While it's possible that I might have gotten a stale cache at some point, with all of these permutations, I definitely see the libjscexecutor.so crash issue on both RN 0.67.4 and 0.69.1.

shamilovtim commented 2 years ago

Downgrading soloader to 0.10.1 fixed this for me. However I have an entirely separate set of problems which is that Detox android is far too slow to accomplish a test #3486

kowalski commented 2 years ago

Downgrading soloader to 0.10.1 fixed this for me. However I have an entirely separate set of problems which is that Detox android is far too slow to accomplish a test #3486

This didn't do a trick for me, I still have the same error. What I've done:

I still have exact same error. @shamilovtim have you done anything additional to what I listed above?

hanno-jonlay commented 2 years ago

How strange. One of the first things I had tried last week was forcing Soloader to 0.10.3, but it didn't seem to fix the issue.

However, forcing it to 0.10.4 solves the problem for me (see releases):

In my android/app/build.gradle:

dependencies {
    ...
    implementation 'com.facebook.soloader:soloader:0.10.4+'
    ....
}

There seem to be several complaints in the Soloader project, regarding this error appearing in 64-bit environments. I'm guessing all of us are using "system-images;android-30;default;x86_64" or similar for our AVDs?

Gerlison commented 2 years ago

@hanno-jonlay I thought that too for a minute. But already tried in several images.

All of them log the same error: java.lang.UnsatisfiedLinkError: dlopen failed: library "/data/app/~~wWw63Xw3XuHckpe9HIzkGw==/com.myapp.test-eHV-I7_1b6vVx-wOOBZiRA==/base.apk!/lib/x86/libhermes.so" not found

I'm curious about the com.myapp.test ".test" information. That gives me an impression that the problem is coming from the test build used by detox.

Gerlison commented 2 years ago

How strange. One of the first things I had tried last week was forcing Soloader to 0.10.3, but it didn't seem to fix the issue.

However, forcing it to 0.10.4 solves the problem for me (see releases):

In my android/app/build.gradle:

dependencies {
    ...
    implementation 'com.facebook.soloader:soloader:0.10.4+'
    ....
}

There seem to be several complaints in the Soloader project, regarding this error appearing in 64-bit environments. I'm guessing all of us are using "system-images;android-30;default;x86_64" or similar for our AVDs?

Tried the soloader 0.10.4, and that changed the logcat a little. Now I can see a new error: image

But I honestly don't know if this error is relevant or just a consequence of changing the soloader version.

kowalski commented 2 years ago

I'm guessing all of us are using "system-images;android-30;default;x86_64" or similar for our AVDs?

That's exactly what we're using.

That gives me an impression that the problem is coming from the test build used by detox.

I also think it's caused by detox somehow. As Michał mentioned in description, the apk built with assembleRelease works fine. It's only the apk built with assembleAndroidTest -DtestBuildType=debug that fails.

Arron-Gill commented 2 years ago

I'm in the same boat as you - same problem

rikur commented 2 years ago

Same, can't run detox against an android release build with hermes enabled.

kowalski commented 2 years ago

That's a hunch, but I'm starting to suspect this line: https://github.com/facebook/react-native/blob/b66db7a84093b0da9b619b1e187c2c812b16893e/packages/react-native-gradle-plugin/src/main/kotlin/com/facebook/react/TaskConfiguration.kt#L228

I actually don't know kotlin or gradle, but what I think I'm looking at is a mechanism that removes from the bundle all files that match glob */libjsc.so. The error would be caused by the fact that normal app doesnt need libjsc but Detox test needs it.

I've tried commenitng out this line in node_modules and rebuilding the app, but I can't see to get it to use my modified code. Perhaps someone in this thread is more knowledgable and can confirm/disprove my conjecture.

hanno-jonlay commented 2 years ago

Unfortunately I don't think I can share much more on our end, as we now have this working in both RN 0.69.1 and 0.67.4 with the Soloader version pinning.

However, @kowalski - the link you've just posted reminds me of something I also stumbled across in earlier debugging here.

Specifically https://github.com/facebook/react-native/issues/25537#issuecomment-1104619909, which suggests setting the enableVmCleanup: false property in the android/app/build.gradle:

project.ext.react = [
    enableHermes: true,
    enableVmCleanup: false,
]

This was one of the first things I tried in our environment, but it didn't seem to have much effect at the time, so I ended up reverting it.

Perhaps you'll have more luck? It may be a better option than trying to patch node_modules directly.

hanno-jonlay commented 2 years ago

One last addition from me.

We're upgrading a couple of RN projects at the moment and have stumbled across a lot of discussion about Soloader 0.10.3 causing issues in Android instrumented tests:

Good luck to all of you!

rikur commented 2 years ago

Thanks @hanno-jonlay. None of the pointers resolved the issue for me, but I appreciate the effort.

I will wait for Expo 46 and hope that RN69 (with bundled Hermes) fixes the issue.

kowalski commented 2 years ago

we now have this working in both RN 0.69.1 and 0.67.4 with the Soloader version pinning.

@hanno-jonlay do I understand correctly that it works fine for you on 0.69.1? What exact version of Soloader have you pinned to?

Gerlison commented 2 years ago

...

Tried the soloader 0.10.4, and that changed the logcat a little. Now I can see a new error: image

But I honestly don't know if this error is relevant or just a consequence of changing the soloader version.

Firstly i tried just to use specific version of soloader (0.10.4+) image , and that alone didn't work for detox test build, because it was causing another error. Which, later, I solved by doing the following guide: https://wix.github.io/Detox/docs/introduction/android/#setting-detox-up-as-a-compiling-dependency

Thank you all

hanno-jonlay commented 2 years ago

@hanno-jonlay do I understand correctly that it works fine for you on 0.69.1? What exact version of Soloader have you pinned to?

@kowalski - Yes - I'm pinned to 0.10.4 in both RN versions, and it appears to be working.

scottwio commented 2 years ago

fixing to implementation 'com.facebook.soloader:soloader:0.10.4+' fixed this for me

aviatam commented 2 years ago

this issue symptoms was release version that didn't work in release move while working in debug , for traceability reasons

iamarjun commented 2 years ago

upgrading to 0.10.4 didn;t work

ggilchrist-ledger commented 2 years ago

Same issue for me (using the soloader:0.10.4+ fix, with Detox 19.12.1 and RN 0.68.2). The weird thing is the tests don't run for me on an Intel chip (building the app in x86_64) but it works for my colleagues running the exact same test code and build on an M1 chip with arm64-v8a

stale[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If you believe the issue is still relevant, please test on the latest Detox and report back.

Thank you for your contributions!

For more information on bots in this repository, read this discussion.

stale[bot] commented 2 years ago

The issue has been closed for inactivity.