web-dev-qa-db-ja.com

マニフェストのマージに失敗しました。コンパイル時のエラー

最新のSDKをダウンロードしてAndroid Studioをインストールしているため、プロジェクトのビルドに失敗します。次のメッセージが表示されます。

マニフェストの統合が複数のエラーで失敗しました


私のgradleアプリ:

apply plugin: 'com.Android.application'

Android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "com.app.clupascu.oavm"
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.Android.support:appcompat-v7:28.0.0'
    implementation 'com.Android.support:design:28.0.0'
    implementation 'com.Android.support.constraint:constraint-layout:1.1.3'
    implementation 'com.github.chrisbanes:PhotoView:2.2.0'
    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'
}

マイマニフェスト

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:tools="http://schemas.Android.com/tools"
    package="com.app.clupascu.oavm">

    <application
        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">

        <activity
            Android:name=".MainPage"
            Android:label="@string/app_name">
            <intent-filter>
                <action Android:name="Android.intent.action.MAIN" />

                <category Android:name="Android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <activity
            Android:name=".FirstObchodni"
            Android:label="@string/obchodn_akademie"/>

        <activity Android:name=".SecondObchodni"
            Android:label="@string/_2_obchodn_akademie"/>

        <activity Android:name=".VysiiOdborna"
            Android:label="@string/_3_vy_odborn_kola"/>
    </application>

</manifest>

In Merged Manifestは次のように書かれています:

Merging Errors: Error: tools:replace specified at line:6 for attribute Android:appComponentFactory, but no new value specified app main manifest (this file), line 5 Error: Validation failed, exiting app main manifest (this file) 

私は他の質問から多くの解決策を試しましたが、結果なしで、どうもありがとう。

6
simpller

"tools:replace =" Android:appComponentFactory "<-Android:appComponentFactory属性に新しい値を提供するが、そうしないことをマニフェスト合併に伝えているこの行。 2つのオプション:

  1. Tools:replace = "Android:appComponentFactory"を削除します

  2. Android:appComponentFactory "属性に新しい値を提供します

それが役に立てば幸い。

3
Nikolay Ivanov

アプリケーションにマップAPIを実装しているときに、同じ状況に直面しました。 AndroidManifest.xmlおよびGradle.propertiesファイルに次のコードを追加して解決しました。

AndroidMainfest.xmlこのコードを追加

    Android:appComponentFactory="androidx.core.app.CoreComponentFactory"
    tools:replace="Android:appComponentFactory"

gradle.propertiesこのコードを追加

   Android.useAndroidX=true
   Android.enableJetifier=true
4
sai Pavan Kumar