任务':app:processDebugManifest'的执行失败-React Native

时间:2019-06-19 09:33:57

标签: android react-native

尝试在Android中构建React Native项目时收到以下错误。 变通方法如下:1. Manifest.XML和android.useAndroidX = true中的“ tools:replace =“ android:appComponentFactory”“,android.enableJetifier = true不起作用

> Task :app:processDebugManifest FAILED /Users/infinitesolution/Desktop/Infinite-Master/Projects/ReactNative/Ruci/android/app/src/debug/AndroidManifest.xml:22:18-91 Error:
        Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91
        is also present at [androidx.core:core:1.0.0] AndroidManifest.xml:22:18-86 value=(androidx.core.app.CoreComponentFactory).
        Suggestion: add 'tools:replace="android:appComponentFactory"' to <application> element at AndroidManifest.xml:7:5-117 to override.

See http://g.co/androidstudio/manifest-merger for more information about the manifest merger.


FAILURE: Build failed with an exception.

* What went wrong: Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed : Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91
        is also present at [androidx.core:core:1.0.0] AndroidManifest.xml:22:18-86 value=(androidx.core.app.CoreComponentFactory).
        Suggestion: add 'tools:replace="android:appComponentFactory"' to <application> element at AndroidManifest.xml:7:5-117 to override.

* Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

我使用的依赖项

"dependencies": {
    "lottie-react-native": "^2.6.1",
    "native-base": "^2.12.1",
    "react": "16.8.6",
    "react-native": "0.59.9",
    "react-native-admob": "^2.0.0-beta.5",
    "react-native-cardview": "^2.0.2",
    "react-native-complete-flatlist": "^1.1.34",
    "react-native-fast-image": "^6.0.3",
    "react-native-headroom": "^1.0.1",
    "react-native-loading-spinner-overlay": "^1.0.1",
    "react-native-mail": "^3.0.7",
    "react-native-reanimated": "^1.0.1",
    "react-native-router-flux": "^4.0.6",
    "react-native-scrollable-tab-view": "^0.10.0",
    "react-native-share": "^1.2.1",
    "react-native-vector-icons": "^6.5.0",
    "react-native-webview": "^5.12.0"
  },

请为此问题添加所有可能的解决方法

2 个答案:

答案 0 :(得分:1)

过去两天来一直遇到此问题。许多其他答案提到使用react-native-device-info来更新版本。但这对我的情况不起作用。

主要原因是由于Google Play服务和Firebase更新Refer here导致React本机构建失败。

我终于使构建成功,在这里我要分享gist link

更改了以上要点链接中提到的以下文件列表,

android/build.gradle:
build.gradle:
gradle.properties:
package.json
gradle-wrapper.properties

最后使用了这个包

npm i jetifier && npx jetify

完成后,最后一次运行

react-native run-android

并使构建成功

提示:在尝试修复之前,请使用./gradlew clean。希望对您有帮助!

答案 1 :(得分:0)

只需添加在gradle.properties中:

android.enableJetifier=true
android.useAndroidX=true

先运行npm i jetifier && npx jetify,然后运行react-native run-android,它对我有用:)