реагирует на ошибку при компиляции Android - PullRequest
1 голос
/ 18 июня 2019

Я компилировал без ошибок, и буквально это проявилось ниоткуда.У кого-нибудь еще была эта ошибка?

Задача: react-native-webview: compileDebugJavaWithJavac Примечание: / user_data / projects / Reaction-native / populi / node_modules / реагировать-native-webview / android / src / main / java/com/reactnativecommunity/webview/RNCWebViewManager.java использует или отменяет устаревший API.Примечание: Перекомпилируйте с -Xlint: не рекомендуется для деталей.Примечание. /User_data/projects/react-native/populi/node_modules/react-native-webview/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java использует непроверенные или небезопасные операции.Примечание: Перекомпилируйте с помощью -Xlint: не проверено для подробностей.

Задача: app: processDebugManifest FAILED /user_data/projects/react-native/populi/android/app/src/debug/AndroidManifest.xml:22: 18-91 Ошибка: Атрибут application @ appComponentFactory value = (android.support.v4.app.CoreComponentFactory) из [com.android.support:support-compat:28.0.0] AndroidManifest.xml: 22: 18-91 такжеприсутствует в [androidx.core: core: 1.0.0] AndroidManifest.xml: 22: 18-86 value = (androidx.core.app.CoreComponentFactory).Предложение: добавьте 'tools: replace = "android: appComponentFactory"' к элементу на AndroidManifest.xml: 7: 5-117, чтобы переопределить.

См. http://g.co/androidstudio/manifest-merger для получения дополнительной информации оманифест слияния.

Ответы [ 2 ]

2 голосов
/ 18 июня 2019

Это проблема с одной из ваших зависимостей.В моем случае я начал с нового реактивного проекта и попытался добавить все зависимости, которые у меня есть в моем проекте, и обнаружил, что проблема связана с react-native-device-info, которая была в версии 0.13.0.

После обновленияreact-native-device-info до версии 2.1.2 проблема исчезла.

1 голос
/ 18 июня 2019

У меня недостаточно репутации, чтобы комментировать ответ Себа Сесброна, поэтому прости меня за публикацию ответа. Его ответ сработал и для меня, и я хотел бы уточнить. Это вызвано недавними обновлениями firebase / gcm, который включает в себя AndroidX, так что react-native-device-info до 2.1.2 также зависит от AndroidX. Версия 2.1.2 добавляет ограничение версии в gcm, чтобы избежать включения AndroidX, пока React Native не будет полностью поддерживать AndroidX. См. Список изменений и соответствующий PR для более подробной информации.

Однако эта проблема не ограничивается react-native-device-info. Вы можете проверить, случайно ли какая-либо библиотека вашего проекта включает AndroidX, выполнив команду:

./gradlew -q :app:dependencies > dependencies.txt

Просмотрите сгенерированный dependencies.txt для ключевого слова "androidx". Он подскажет, какая библиотека вызывает проблему. Возможно, вы захотите комментировать зависимости в app / build.gradle, пока не найдете виновника.

В моем случае, помимо библиотек, функция привязки данных также включает AndroidX. Возможно, вам придется проверить, содержит ли ваш app / build.gradle следующие строки:

dataBinding {
   enabled true
}

Надеюсь, это поможет тем, кто столкнулся с этой проблемой, отладить быстрее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...