Неправильное изменение исходной версии

Получение следующего сообщения при инициализации нового проекта, а затем запуск эмулятора x-code. "Несоответствие в соответствии с реакцией" Версия Javascript 0.50.1 Родная версия: 0.50.0

Убедитесь, что вы восстановили собственный код...

Кто-нибудь знает, что здесь происходит и может мне помочь?

Спасибо!

введите описание изображения здесь

Ответ 1

Вот что я сделал с этим:

Закройте все терминалы и снова запустите сборку.

Вы можете забыть закрыть терминал nodejs из другого проекта, и они установили другую версию реакции.

Таким образом, выборка кода с сервера nodejs конфликтует с собственным.

Ответ 2

В случае, если вы создали свое приложение для реагирования, используя приложение create-react-native-app. У вас должен быть app.json(expo). и файл package.json, проверьте соответствие версий экспо и измените их соответствующим образом. Например, в моем случае проблема заключалась в том, что в файле app.json у меня была версия 25.0.0 для атрибута expo sdkVersion, я меняю это на 23.0.0, и все сработало.

package.json:

"dependencies": {
    "expo": "^23.0.4",
    "react": "16.0.0",
    "react-native": "^0.50.4"
  }

app.json:

{
  "expo": {
    "sdkVersion": "23.0.0" // before was 25.0.0
  }
}

Ответ 3

Просто зайдите в ваш android/app/build.gradle и затем добавьте в раздел dependencies:

dependencies{
compile ("com.facebook.react:react-native:0.50.3") { force = true } 
}

///нативную версию реагирования можно найти в package.json

Ответ 4

просто заставьте реагировать родную версию в файле Gradle вашего уровня приложения для Android, в разделе dependencies.

compile ("com.facebook.react:react-native:0.52.0") { force = true }

работал на меня

Ответ 5

У меня была эта проблема в течение самого длительного времени, и ни одно из вышеупомянутых решений не помогло. Я находился в процессе обновления рэйбэйл native в проекте create-react-native-app пока не обнаружил, что не все версии Expo поддерживают последнюю версию React Native.

Нашел эту страницу по ссылке в документации, которая показывает, какие комбинации версий React Native, React и Expo официально поддерживаются:

Источник: https://github.com/react-community/create-react-native-app/blob/master/VERSIONS.md

Редактирование файлов app.json и package.json в соответствии с соответствующими версиями и запуск npm install заставили все работать снова.

Ответ 6

Я никогда не видел эту ошибку раньше, но всякий раз, когда я не могу заставить Xcode и React-Native хорошо играть вместе, я делаю пару вещей. Проверьте версию Xcode, с которой я работаю. Если он нуждается в обновлении, я обновляю его. Затем очищающий сторож и кеш - второе место, куда я иду. Я не использую команду кэша reset. Он всегда говорит, что мне нужно проверить кеш, поэтому я пропущу это (вы можете это сделать, хотя я просто запутался). Я использую rm -rf $TMPDIR/response- *, чтобы избавиться от любых кешированных сборок. Если это не сработает, я пытаюсь создать приложение в Xcode, а затем проделаю свой путь оттуда, чтобы создать его с помощью run-ios для реагирования. С этим сообщением об ошибке кажется, что вы можете начать с создания его с помощью Xcode. Надеюсь, что это поможет... дайте мне знать о вашем прогрессе. Удачи! (Кроме того, вы можете обновить до RN 0.51 в качестве еще одной попытки синхронизировать ваши версии.)

Ответ 7

В вашем файле build.gradle добавьте следующее

implementation ("com.facebook.react:react-native:0.51.0") {
    force = true;
}

замените 0.51.0 на версию в вашем package.json

Ответ 8

Если вы используете приложение React Native через Expo, обновление React Native может вызвать эту ошибку (как указано в https://github.com/expo/expo/issues/923).

Если это ваш сценарий, ваши варианты:

  • Bump Expo (которая указана в вашем package.json) к версии, совместимой с вашей версией React Native (если таковая существует, что может быть не так), судя по связанной проблеме, я полагаю, что трассы поддержки Expo React Native release).
  • Отмените изменения, удалите и переустановите модули Node Eject из Экспо, а затем (после проверки того, что вы можете по-прежнему запускайте приложение после эжекции) повторите попытку обновления.

Ответ 9

Попробуйте установить зависимости снова. Это сработало для me-

1.) yarn/npm install
2.) yarn/npm start --reset-cache

Ответ 10

Для разработчиков Android, которые не могут исправить это, просто закрыв и перестроив, удалите приложение вручную на эмуляторе/устройстве.

Ответ 11

Я использую физическое устройство, в моем случае это решило проблему:

  1. Удалить приложение
  2. lsof -i :8081
  3. kill -9 PID
  4. Перестройте приложение (react-native run-ios react-native run-android или react-native run-ios)

Ответ 12

Для меня это было связано с react-native версией в разделе dependency файла package.json. Это было:

"dependencies": {
"expo": "^27.0.1",
"react": "16.3.1",
"react-native": "~0.55.0"
}

Я изменил это:

"dependencies": {
"expo": "^27.0.1",
"react": "16.3.1",
"react-native": "0.52.0"
}

Теперь все отлично работает.

Ответ 13

В моем случае помогла установка нового виртуального устройства. Сейчас я использую 1 устройство на приложение.

Ответ 14

Для других с той же проблемой в iOS с CocoaPods:

Я попробовал все решения выше, без везения. У меня есть несколько пакетов с собственными зависимостями в моем проекте, и некоторые из них требуют установки модулей модуля. Проблема заключалась в том, что React был указан в моем подфайле, но модуль React не обновлялся автоматически с помощью react-native-git-upgrade.

Исправлено обновление всех установленных модулей, запустив cd ios && pod install.

Ответ 15

исправление, которое мы сделали, состояло в том, чтобы убедиться, что переменные ANDROID_HOME и PATH были установлены до сборки.

Сначала запустите две нижеприведенные команды, затем соберите приложение для устройства.

export ANDROID_HOME =/Пользователи/имя пользователя /MyFiles/application/androidsdk export PATH = $ PATH: $ ANDROID_HOME/tools: $ ANDROID_HOME/platform-tools

Ответ 16

Мне пришлось перезагрузить компьютер, снова открыть IDE (VS Code, Brackets, Sublime и т.д.) И собрать проект.

Ответ 17

У меня также была эта проблема, используя Экспо и iOS Simulator. Для меня сработало стирание симулятора в разделе " Hardware > Erase All Content and Settings...

Ответ 18

В моем случае (НЕ использую экспо и сборку Android)

package.json

"dependencies": {
    "react": "16.3.1",
    "react-native": "0.55.2"
}

И app.json

{
  "sdkVersion": "27"
}

решил проблему

Ответ 19

Я пытался собрать и запустить приложение React Native из WebStorm и столкнулся с этой проблемой. Простое решение для меня было:

watchman watch-del-all

В macOS, если watchman не установлен, установите его с помощью Homebrew:

brew install watchman

Ответ 20

Экспо-пользователи - убедитесь, что ваша версия app.json sdk и package.json expo совместимы (могут быть равны).

Ответ 21

В моем случае я столкнулся с этим на iOS, и я попытался сбросить и очистить весь кеш, используя приведенную ниже команду, но тоже потерпел неудачу, несмотря на то, что во многих комментариях говорилось, что основная причина в том, что где-то случайно работает реагирующий упаковщик. мой макинтош и проблема все еще остались.

watchman watch-del-all && rm -rf node_modules/ && yarn cache clean && yarn install && yarn start --reset-cache

Решение состоит в том, чтобы удалить папку сборки @/ios/build, а затем выполнить react-native run-ios ее

Ответ 22

Я пробовал решения выше, но добавление этого в AndroidManifest.xml, кажется, исправляет это.

  android:usesCleartextTraffic="true"

Ответ 23

Это не исправление, но в моем случае на моем устройстве было установлено несколько приложений RN, и я неосознанно пытался "перезагрузить" приложение из другого приложения. (Сейчас я занимаюсь разработкой двух приложений) Так что убедитесь, что вы находитесь в правильном приложении!

Ответ 24

Попробуйте изменить версию вашего реактивного языка, указанного в файле package.json (в разделе "Зависимости - реактивный язык"), на версию "Родная версия", показанную в сообщении об ошибке. Затем снова запустите 'npm install'.

Ответ 25

У меня возникла та же проблема при создании моего собственного приложения реакции для Android, и я сделал следующее, что сработало для меня.

"Версия JavaScript 0.50.1" в консоли ошибок является версией-реакцией в вашем файле package.json. Убедитесь, что это та же версия, что и "Собственная версия 0.50.0" в консоли ошибок.

  1. Я обновил собственную версию реагирования до "родной версии 0.50.0", как было предложено в консоли ошибок.
  2. Перестройте приложение react-native run-android.

Ответ 26

Убедитесь, что в вашем эмуляторе включен wifi

Ответ 27

Открыть проектный каталог /android/app/build.gradle

Пытаться:

compile ("com.facebook.react: Reaction-native: 0.51.0") {force = true}

Вместо компиляции "com.facebook.react: Reaction-native: 0.51.0" {force = true}

Ссылка: Ссылка

Ответ 28

Возможное исправление:

  1. Удалить пакет-lock.json
  2. Запустите: watchman watch-del-all && rm -rf $TMPDIR/react-* && rm -rf $TMPDIR/haste-map-react-native-packager-* && rm -rf node_modules/&& npm install

Если проблема не устранена, попробуйте выполнить проект непосредственно из Xcode

Это сработало для меня.

Ответ 29

В моем случае физическое устройство Android не подключается к серверу js, работающему на моей машине для разработки. Поэтому я должен вручную установить хост и порт сервера отладки на устройстве Android.

Ответ 30

Это было бы особенно применимо для Android Studio 3.2 или более новых пользователей, так как этого не произошло до обновления.

Если вы не изменили версию React Native в своей конфигурации (package.json, build.gradle), проблема с несоответствием версий может быть build.gradle с необнаруженными изменениями в файлах проекта после проверки другого коммита в git. Чтобы преодолеть это, обязательно:

  • Очистить сборку: Build > Clean Project

  • Синхронизировать проект с файлами Gradle: рядом с кнопкой " Stop на панели навигации

  • Создать проект: первая кнопка на панели навигации со значком молотка

  • И, наконец, приложение Run/Debug

Это также поможет преодолеть Session 'app': Error Installing APK Ошибка, которая может произойти из-за мгновенного запуска после удаления приложения с устройства.