
Приложение запускается с помощью npx expo start, но немедленно завершает работу после нажатия, чтобы открыть его на Android.
Среда
- ОС: Linux (на базе Ubuntu)
- Устройство: Samsung Galaxy A35
- Версия Android: Android 14
- Expo: Управляемый рабочий процесс
- Запуск через: USB (Expo Go)
- Использованная команда:
Код: Выделить всё
npx expo start --localhost
На Android приложение вылетает со следующей ошибкой в Logcat:
Код: Выделить всё
java.lang.String cannot be cast to java.lang.Boolean
at com.facebook.react.uimanager.ViewManagerPropertyUpdater
at com.facebook.react.uimanager.ViewManagerPropertyUpdater$FallbackViewManagerSetter.setProperty
at com.facebook.react.uimanager.NativeViewHierarchyManager.updateProperties
at com.facebook.react.uimanager.UIImplementation.updateView
Код: Выделить всё
Error fetching file file_00000000bf4071f5b02f740f3048e659 from file service.
Error fetching file file_00000000835471f5884e0f4c9ad469a9 from file service.
- не содержит значений «истина» или «ложь» в виде строк
Код: Выделить всё
app.json - Логические значения записаны правильно (/ false, без кавычек)
Код: Выделить всё
true - Удалены экспериментальные флаги, такие как:
Код: Выделить всё
newArchEnabled Код: Выделить всё
edgeToEdgeEnabledКод: Выделить всё
predictiveBackGestureEnabled
Код: Выделить всё
npx expo start --clear
- Android SDK и adb настроены правильно
- Приложение работает в Интернете, но аварийно завершает работу только на Android
Код: Выделить всё
{
"expo": {
"name": "Frontconsig-crm-app",
"slug": "Frontconsig-crm-app",
"version": "1.0.0",
"orientation": "portrait",
"icon": "./assets/icon.png",
"userInterfaceStyle": "light",
"splash": {
"image": "./assets/splash-icon.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"ios": {
"supportsTablet": true
},
"android": {
"adaptiveIcon": {
"foregroundImage": "./assets/adaptive-icon.png",
"backgroundColor": "#ffffff"
}
},
"web": {
"favicon": "./assets/favicon.png",
"bundler": "metro"
}
}
}
Насколько я понимаю, эта ошибка обычно возникает, когда свойство компонента получает строку вместо логического значения, например:
Код: Выделить всё
// wrong
// correct
- Как лучше всего определить, какой именно компонент или опора вызывает эту ошибку на Android?
- Известен ли шаблон Expo или React Native вызывает эту ошибку только на Android?
- Существуют ли инструменты или флаги, позволяющие улучшить трассировку стека JS для такого рода встроенных сбоев?
Подробнее здесь: https://stackoverflow.com/questions/798 ... va-lang-bo
Мобильная версия