expo: SDK 42: Immediate crash on clicking Scan QR Code button or choosing an entry from RECENTLY IN DEVELOPMENT
Summary
Yesterday I created a new app to try out react-native-navigation-bar-color
(but it turns out that this issue occurs even without installing any dependencies other than expo-dev-client
after expo init
.)
I installed expo-dev-client
and built with eas build --platform android --profile development --local
After installing it on my Samsung Galaxy S8 (Android 9) I opened it. Immediately on clicking the Scan QR Code button it crashes. It does not build/download the bundle before crashing.
After that I upgraded to SDK 43.0.0-beta.3 and built that. This worked perfectly.
I only tested on Android.
See also this forum thread
Managed or bare workflow? If you have made manual changes inside of the ios/
or android/
directories in your project, the answer is bare!
managed
What platform(s) does this occur on?
Android
Package versions
expo-dev-client@0.6.2
Environment
% expo diagnostics
Expo CLI 4.12.1 environment info:
System:
OS: macOS 11.6
Shell: 5.8 - /bin/zsh
Binaries:
Node: 16.10.0 - /opt/homebrew/bin/node
Yarn: 1.22.15 - /opt/homebrew/bin/yarn
npm: 7.24.1 - /opt/homebrew/bin/npm
Managers:
CocoaPods: 1.11.2 - /opt/homebrew/bin/pod
SDKs:
iOS SDK:
Platforms: iOS 15.0, DriverKit 20.4, macOS 11.3, tvOS 15.0, watchOS 8.0
IDEs:
Android Studio: 2020.3 AI-203.7717.56.2031.7678000
Xcode: 13.0/13A233 - /usr/bin/xcodebuild
npmPackages:
expo: ~42.0.1 => 42.0.4
react: 16.13.1 => 16.13.1
react-dom: 16.13.1 => 16.13.1
react-native: https://github.com/expo/react-native/archive/sdk-42.0.0.tar.gz => 0.63.2
react-native-web: ~0.13.12 => 0.13.18
Expo Workflow: managed
Reproducible demo or steps to reproduce from a blank project
% expo init sdk-42-dev-client-crash -t blank
[...]
% cd sdk-42-dev-client-crash
% yarn add expo-dev-client
[...]
β¨ Done in 13.16s.
% git commit -am "Install expo-dev-client"
[main b312801] Install expo-dev-client
% eas build --platform android --profile development --local
β This project is not configured to build with EAS. Set it up now? β¦ yes
β Generated eas.json
π Android application id Learn more
β What would you like your Android application id to be? β¦ com.example.sdk42devclientcrash
β Can we commit these changes to git for you? βΊ Yes
β Commit message: β¦ Configure EAS Build for Android
β Committed changes
β Created @wodin/sdk-42-dev-client-crash on Expo
β Using remote Android credentials (Expo server)
β Generate a new Android Keystore? β¦ yes
β Created keystore
ANDROID_NDK_HOME environment variable was not specified, continuing build without NDK
[SETUP_WORKINGDIR] Preparing workingdir /var/folders/kj/rwm7htb51n18wlz4pbljb75w0000gn/T/eas-build-local-nodejs/58ac21f5-56f0-409f-9750-9b3568bc9d75
[START_BUILD] Starting build
[...]
[UPLOAD_ARTIFACTS] Build artifacts: /var/folders/kj/rwm7htb51n18wlz4pbljb75w0000gn/T/eas-build-local-nodejs/58ac21f5-56f0-409f-9750-9b3568bc9d75/build/android/app/build/outputs/apk/debug/app-debug.apk
[PREPARE_ARTIFACTS] Archiving artifacts
[PREPARE_ARTIFACTS] Writing artifacts to /private/tmp/sdk-42-dev-client-crash/build-6-9-2021-19:21.apk
Build successful
You can find the build artifacts in /private/tmp/sdk-42-dev-client-crash/build-6-9-2021-19:21.apk
Install the APK and open it.
Click the βScan QR Codeβ button. (No need to run expo start --dev-client
.)
Stacktrace (if a crash is involved)
10-15 17:55:11.490 4183 4299 E AndroidRuntime: FATAL EXCEPTION: mqt_native_modules
10-15 17:55:11.490 4183 4299 E AndroidRuntime: Process: com.example.navbarcolour, PID: 4183
10-15 17:55:11.490 4183 4299 E AndroidRuntime: com.facebook.react.common.JavascriptException: TypeError: c.startOperationBatch is not a function. (In 'c.startOperationBatch()', 'c.startOperationBatch' is undefined), stack:
10-15 17:55:11.490 4183 4299 E AndroidRuntime: disableQueue@226:592
10-15 17:55:11.490 4183 4299 E AndroidRuntime: unsetWaitingForIdentifier@226:457
10-15 17:55:11.490 4183 4299 E AndroidRuntime: value@245:826
10-15 17:55:11.490 4183 4299 E AndroidRuntime: h@248:1507
10-15 17:55:11.490 4183 4299 E AndroidRuntime: value@248:1686
10-15 17:55:11.490 4183 4299 E AndroidRuntime: value@223:2411
10-15 17:55:11.490 4183 4299 E AndroidRuntime: s@232:1346
10-15 17:55:11.490 4183 4299 E AndroidRuntime: start@232:1397
10-15 17:55:11.490 4183 4299 E AndroidRuntime: value@219:2072
10-15 17:55:11.490 4183 4299 E AndroidRuntime: value@219:2141
10-15 17:55:11.490 4183 4299 E AndroidRuntime: onPressIn@219:1702
10-15 17:55:11.490 4183 4299 E AndroidRuntime: value@215:7927
10-15 17:55:11.490 4183 4299 E AndroidRuntime: value@215:7377
10-15 17:55:11.490 4183 4299 E AndroidRuntime: value@215:6970
10-15 17:55:11.490 4183 4299 E AndroidRuntime: onResponderGrant@215:4967
10-15 17:55:11.490 4183 4299 E AndroidRuntime: E@94:896
10-15 17:55:11.490 4183 4299 E AndroidRuntime: extractEvents@94:8888
10-15 17:55:11.490 4183 4299 E AndroidRuntime: <unknown>@94:13472
10-15 17:55:11.490 4183 4299 E AndroidRuntime: xe@94:92704
10-15 17:55:11.490 4183 4299 E AndroidRuntime: Re@94:12995
10-15 17:55:11.490 4183 4299 E AndroidRuntime: ze@94:13384
10-15 17:55:11.490 4183 4299 E AndroidRuntime: receiveTouches@94:14177
10-15 17:55:11.490 4183 4299 E AndroidRuntime: value@45:3492
10-15 17:55:11.490 4183 4299 E AndroidRuntime: <unknown>@45:747
10-15 17:55:11.490 4183 4299 E AndroidRuntime: value@45:2538
10-15 17:55:11.490 4183 4299 E AndroidRuntime: value@45:719
10-15 17:55:11.490 4183 4299 E AndroidRuntime: value@-1
10-15 17:55:11.490 4183 4299 E AndroidRuntime:
10-15 17:55:11.490 4183 4299 E AndroidRuntime: at com.facebook.react.modules.core.ExceptionsManagerModule.reportException(ExceptionsManagerModule.java:83)
10-15 17:55:11.490 4183 4299 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
10-15 17:55:11.490 4183 4299 E AndroidRuntime: at com.facebook.react.bridge.JavaMethodWrapper.invoke(JavaMethodWrapper.java:372)
10-15 17:55:11.490 4183 4299 E AndroidRuntime: at com.facebook.react.bridge.JavaModuleWrapper.invoke(JavaModuleWrapper.java:151)
10-15 17:55:11.490 4183 4299 E AndroidRuntime: at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)
10-15 17:55:11.490 4183 4299 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:873)
10-15 17:55:11.490 4183 4299 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
10-15 17:55:11.490 4183 4299 E AndroidRuntime: at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:27)
10-15 17:55:11.490 4183 4299 E AndroidRuntime: at android.os.Looper.loop(Looper.java:214)
10-15 17:55:11.490 4183 4299 E AndroidRuntime: at com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run(MessageQueueThreadImpl.java:226)
10-15 17:55:11.490 4183 4299 E AndroidRuntime: at java.lang.Thread.run(Thread.java:764)
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Comments: 17 (8 by maintainers)
Hey all β this should be fixed in expo-dev-client@0.6.3 which is out now. Thanks @wodin for the report and workaround!!
Thanks for the reports! Weβre able to reproduce and will try to get it fixed shortly