尝试在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"
},
请为此问题添加所有可能的解决方法
答案 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
,它对我有用:)