Я работаю над проектом RN, который использует react-native-threads
. Все работает нормально, пока я не создам подписанный релиз APK. Если я запускаю react-native run-android
или создаю подписанный отладочный APK, приложение работает как положено. Однако при выпуске APK-релиза при запуске приложения выдается следующая ошибка:
E/AndroidRuntime: FATAL EXCEPTION: mqt_native_modules
Process: com.mav3rik.parks, PID: 32745
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: Unable to load script. Make sure you're either running a Metro server (run 'react-native start') or that your bundle 'threads/index.thread.bundle' is packaged correctly for release.
at com.facebook.react.bridge.DefaultNativeModuleCallExceptionHandler.handleException(DefaultNativeModuleCallExceptionHandler.java:22)
at com.facebook.react.devsupport.DisabledDevSupportManager.handleException(DisabledDevSupportManager.java:170)
at com.reactlibrary.RNThreadModule.startThread(RNThreadModule.java:98)
at java.lang.reflect.Method.invoke(Native Method)
at com.facebook.react.bridge.JavaMethodWrapper.invoke(JavaMethodWrapper.java:372)
at com.facebook.react.bridge.JavaModuleWrapper.invoke(JavaModuleWrapper.java:158)
at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:29)
at android.os.Looper.loop(Looper.java:193)
at com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run(MessageQueueThreadImpl.java:232)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.util.concurrent.ExecutionException: java.lang.RuntimeException: Unable to load script. Make sure you're either running a Metro server (run 'react-native start') or that your bundle 'threads/index.thread.bundle' is packaged correctly for release.
at com.facebook.react.common.futures.SimpleSettableFuture.get(SimpleSettableFuture.java:66)
at com.reactlibrary.ReactContextBuilder.build(ReactContextBuilder.java:103)
at com.reactlibrary.JSThread.runFromContext(JSThread.java:32)
at com.reactlibrary.RNThreadModule.startThread(RNThreadModule.java:90)
при необходимости может быть предоставлена дополнительная ошибка.
Что следует учесть, это Приложение Salesforce React Native, также оно использует Appcenter / CodePu sh.
С react-native info
React Native Environment Info:
System:
OS: macOS 10.14.6
CPU: (4) x64 Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz
Memory: 68.65 MB / 16.00 GB
Shell: 5.3 - /bin/zsh
Binaries:
Node: 10.16.3 - /usr/local/bin/node
Yarn: 1.17.3 - /usr/local/bin/yarn
npm: 6.9.0 - /usr/local/bin/npm
SDKs:
iOS SDK:
Platforms: iOS 12.4, macOS 10.14, tvOS 12.4, watchOS 5.3
IDEs:
Android Studio: 3.5 AI-191.8026.42.35.6010548
Xcode: 10.3/10G8 - /usr/bin/xcodebuild
npmPackages:
react: 16.8.3 => 16.8.3
react-native: 0.59.9 => 0.59.9
С package.json
"appcenter": "^2.1.0"
"react-native-code-push": "^5.6.1"
Я пробовал решение, в котором я изменяю относительный путь jsFileSlug
в node_modules/react-native-threads/.../RNThreadModule.java
. Но это не изменило результат.
Я получил сообщение об ошибке, прослушав logcat.
Заранее спасибо.