replace = "android: appComponentFactory" в приложении для Android - PullRequest
0 голосов
/ 04 апреля 2019

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

Execution failed for task ':inteligentestate: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:6:5-28:19 to override.

из сообщения об ошибке, которое я добавил tools:replace="android:appComponentFactory" в моем основном манифесте приложения:

<application
    android:name=".application.App"
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme"
    tools:ignore="GoogleAppIndexingWarning"
    tools:replace="android:appComponentFactory">

Когда я запускаю свое приложение, я получаю эту ошибку:

Task :inteligentestate:processDebugManifest FAILED
/mnt/main/Project/.../AndroidManifest.xml:6:5-29:19 Error:
    tools:replace specified at line:6 for attribute android:appComponentFactory, but no new value specified
/mnt/main/Tutorial/Android/project/.../AndroidManifest.xml Error:
    Validation failed, exiting

Я гуглил и нашел этот пост . Я не использую androidX

Это мои зависимости проекта:

dependencies {
    // Support
    implementation "com.android.support:design:${versions.supportLib}"
    implementation "com.android.support:recyclerview-v7:${versions.supportLib}"
    implementation "com.android.support:cardview-v7:${versions.supportLib}"
    implementation "com.android.support:gridlayout-v7:${versions.supportLib}"
    implementation "com.android.support:customtabs:${versions.supportLib}"

    // room
    implementation "android.arch.persistence.room:runtime:${versions.room}"
    annotationProcessor "android.arch.persistence.room:compiler:${versions.room}"
    implementation "android.arch.persistence.room:rxjava2:${versions.room}"

    // Network
    implementation "com.google.code.gson:gson:${versions.gson}"
    implementation "com.squareup.retrofit2:retrofit:${versions.retrofit}"
    implementation "com.squareup.retrofit2:converter-gson:${versions.retrofit}"
    implementation "com.squareup.okhttp3:logging-interceptor:${versions.interceptor}"

    //rx java
    implementation "io.reactivex.rxjava2:rxandroid:${versions.rxAndroidVersion}"
    implementation "io.reactivex.rxjava2:rxjava:${versions.rxJavaVersion}"

    //Other
    implementation "com.jakewharton.timber:timber:${versions.timber}"
    implementation "com.jakewharton:butterknife:${versions.butterknife}"
    annotationProcessor "com.jakewharton:butterknife-compiler:${versions.butterknife}"
    implementation "com.google.dagger:dagger:${versions.dagger}"
    annotationProcessor "com.google.dagger:dagger-compiler:${versions.dagger}"

    // Testing
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

    implementation project(path: ':map')
}

И библиотечные зависимости:

dependencies {
    api fileTree(dir: 'libs', include: ['*.jar'])
    api "com.android.support.constraint:constraint-layout:${versions.constraintLayout}"
    api "com.android.support:appcompat-v7:${versions.supportLib}"
    api "com.android.support:support-v4:${versions.supportLib}"

    // Mapbox
    api "com.mapbox.mapboxsdk:mapbox-android-sdk:${versions.mapboxMapSdk}"
    api "com.mapbox.mapboxsdk:mapbox-android-plugin-localization-v7:${versions.mapboxPluginLocalization}"

Я нашел этот пост Анбер упомянул, что

проект имеет разные версии одной и той же библиотеки

Но я думаю, что библиотека моего проекта такая же !!!

Ответы [ 2 ]

0 голосов
/ 06 июля 2019

Да, это просто.

Перейдите к манифесту приложения , и внизу вы увидите mergedManifest параметр

перейдите к mergedManifest bottom , где он сообщит вам, в чем вы ошиблись и в каком файле

Увидим ошибку ближе.Это в основном ошибка в нашем файле макета, поэтому объединенный манифест не работает

Надеюсь, что это решит вашу ошибку !!!

0 голосов
/ 04 апреля 2019

, пожалуйста, попробуйте понизить версию Gradle и перезапустить Android Studio

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