Я больше не могу запускать свое приложение после обновления версии expo до 31.0.0. Мне нужно было это обновление, чтобы обеспечить поддержку iOS версии 12. После попытки создать приложение для Android оно больше не работает.
мой package.json выглядит следующим образом:
{
"name": "myapp",
"version": "0.1.0",
"private": true,
"devDependencies": {
"react-native-scripts": "1.13.1",
"jest-expo": "^31.0.0",
"react-test-renderer": "16.3.0-alpha.1"
},
"main": "./node_modules/react-native-scripts/build/bin/crna-entry.js",
"scripts": {
"start": "react-native-scripts start",
"eject": "react-native-scripts eject",
"android": "react-native-scripts android",
"ios": "react-native-scripts ios",
"test": "jest"
},
"jest": {
"preset": "jest-expo"
},
"dependencies": {
"axios": "^0.18.0",
"expo": "^31.0.4",
"react": "16.5.0",
"react-native": "https://github.com/expo/react-native/archive/sdk-31.0.1.tar.gz",
"react-native-image-slider": "^2.0.3",
"react-native-onesignal": "^3.1.4",
"react-native-progress": "^3.4.0",
"react-native-render-html": "^3.9.3",
"react-navigation": "^1.5.11"
}
}
app.json выглядит так:
{
"expo": {
"sdkVersion": "31.0.0",
"name": "myapp",
"slug": "myapp",
"version": "0.1.1",
"isDetached": true,
"detach": {
"scheme": "expe6b74e69f7904f4b8961fc359e0dc1ce",
"androidExpoViewUrl": "https://s3.amazonaws.com/exp-exponent-view-code/android-v2.4.0-sdk26.0.0-e63d9209-070c-4118-b06b-c60e82da0b66.tar.gz"
},
"android": {
"package": "com.myapp"
}
}
}
Приложение Android build.gradle выглядит так:
android {
compileSdkVersion 27
buildToolsVersion '26.0.1'
defaultConfig {
applicationId 'com.ferrometal12'
targetSdkVersion 27
versionCode 1
versionName '0.1.1'
ndk {
abiFilters 'armeabi-v7a', 'x86'
}
multiDexEnabled true
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
// Deprecated. Used by net.openid:appauth
manifestPlaceholders = [
'appAuthRedirectScheme': 'host.exp.exponent'
]
}
Есть идеи, почему это больше не работает на Android?
ПРИМЕЧАНИЕ: до того, как у меня была expo 26.0.0, у меня также была targetSdkVersion до 26, после обновления expo я также обновил targetSdkVersion до 27
ОБНОВЛЕНИЕ: эта ошибка возникает на эмуляторе, я еще не пробовал на реальном устройстве, но у меня такое ощущение, что то же самое будет и на реальном устройстве.
Я вижу, что у вас разные версии sdk в package.json и app.json
Я пока не нашел решения, а как насчет вас?
@Mizlul только что добавил ответ.
@Mizlul Я просто обновил sdk app.json :) И теперь он работает
@AralRoca, вы можете опубликовать свой app.json, а мой package.json все еще не работает.
Сделайте npm i -g expo для обновления версии и сделайте в другой папке expo init, затем скопируйте версии зависимостей app.json и package.json в свой проект.
@AralRoca, что для вас sdkVersion в app.json? у меня 31.0.0 не работает
@Mizlul У меня 31.0.0 в app.json. Разница в том, что у меня также есть «response-native»: «github.com/expo/react-native/archive/sdk-31.0.0.tar.gz» `в package.json,`
спасибо, я также постараюсь обновить реакцию на родную
Вам необходимо удалить, а затем установить Expo на свое устройство Android.
У меня вообще нет expo, установленного на моем устройстве Android!
Исправлена проблема.
@Mizlul, когда мы выбираем «Запускать на устройстве / эмуляторе Android», expo сначала устанавливает приложение «Expo» на эмуляторе, а затем запускает приложение. Это происходит при обновлении Expo-CLI и Expo App. Вам просто нужно удалить приложение Expo из эмулятора и запустить проект (запуск npm), он установит обновленную версию приложения Expo на ваш эмулятор. То же самое и в случае с телефоном Android, вам необходимо обновить приложение Expo на своем телефоне.
см. апгрейд прогулочное корыто ...
{
"react-native": "https://github.com/expo/react-native/archive/sdk-31.0.0.tar.gz",
"expo": "^31.0.0",
"react": "16.5.0"
}
тот sdkVersion, который вы изменили, скорее всего, является версией Android SDK и должен быть:
"sdkVersion": "26.0.0"
текущий максимум будет 28.0.0, но когда он запрашивает 26.0.0, возможно, следует использовать его.
Я попробую эту конфигурацию
Я получаю несоответствие версии javascrip и реакции на родную
Если вы используете expokit, убедитесь, что в вашем package.json также установлена последняя версия expokit.
Мое приложение отсоединено / извлечено, и я использую ExpoKit. У меня сработала следующая конфигурация:
в package.json
"expo": "^31.0.6",
"expokit": "31.0.2",
"react": "16.5.0",
"react-native": "https://github.com/expo/react-native/archive/sdk-31.0.1.tar.gz",
в app.json
"sdkVersion": "31.0.0"
и увидев прохождение апгрейда
Обновленное приложение Mobile Expo из play-store в android. У меня это сработало.
Я столкнулся с этой проблемой сегодня; мое приложение Expo для Android вызывало эту ошибку после того, как playstore обновил это приложение.
Я решил проблему, установив старую версию Expo APP (Вы можете найти более старые версии приложений PlayStore на apkpure.com) и загрузив Expo Android App версии 2.12, которая поддерживает SDK 31.0.0.
Если вы запустили expo update 35.0.0 или другую версию, и это не помогло устранить ошибку, и если вы выбросили свой выставочный проект ...
Проверьте, есть ли у вас правильные свойства отсоединения в вашем app.json. Обратите внимание на номер SDK в URL-адресе ключей iosExpoViewURL и androidExpoViewURL.
"detach": {
"iosExpoViewUrl": "https://s3.amazonaws.com/exp-exponent-view-code/ios-v2.13.0-sdk35.0.0-a30ebc9b-3db4-42f4-b677-e468076baf18.tar.gz",
"androidExpoViewUrl": "https://s3.amazonaws.com/exp-exponent-view-code/android-v2.13.0-sdk35.0.0-b816b7af-88da-4ca9-87a5-7438f0c21b6e.tar.gz"
}
У меня возникла та же проблема. Проблема была решена путем очистки данных и кеша приложения Expo на устройстве Android. Теперь все работает нормально.
Чтобы решить эту проблему, просто перейдите на последнюю версию node и expo cli. Удалите expo со своего телефона и сделайте новую установку из магазина приложений. Тебе должно быть хорошо.
Добрый день,
ЭТО РАБОТАЕТ
uninstall expo in the virtual android device. If you are not sure how to uninstall you can delete the virtual device in Android Virtual Device Manager so that all things are refreshed. Reinstall the virtual device again
find the expo and uninstall it.
@AndriyFM Я рад, что это помогло
У меня точно такая же проблема. Ты найдешь как исправить?