ホームページ  >  記事  >  Java  >  マニフェスト マージャー エラーを解決する方法: 属性 Application@AppComponentFactory?

マニフェスト マージャー エラーを解決する方法: 属性 Application@AppComponentFactory?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-30 18:59:02918ブラウズ

How to Resolve Manifest Merger Error: Attribute Application@AppComponentFactory?

マニフェスト マージャー エラー: 属性 Application@AppComponentFactory

Android アプリをビルドするときに、マニフェスト合併。このエラーは、プロジェクト内の複数のライブラリに異なる値を持つ同じ属性が含まれている場合に発生します。

特定のケースでは、エラーは [androidx.xml] の AndroidManifest.xml ファイル内の appComponentFactory 属性値間の競合によって発生します。 core:core:1.0.0] および [com.android.support:support-compat:28.0.0]。これは、プロジェクトで AndroidX とサポート ライブラリの両方を使用していることを示しています。

この問題を解決するには、2 つのオプションがあります:

  • AndroidX への移行:

    • [AndroidX への移行](https://developer.android.com/jetpack) の手順に従って、Jetpack (AndroidX) ライブラリを使用するようにアプリを更新します。 /androidx/).
    • compileSdkVersion を 28 以降に更新します。
    • com.android.tools.build:gradle を v3.2.1 以降にアップグレードします。
  • Firebase の依存関係をダウングレードします:

    • これは一時的な修正にすぎず、最終的には AndroidX に移行する必要があるため、お勧めできません。

ソリューションを選択したら、以下に基づいてプロジェクト レベルの build.gradle ファイル内の依存関係を更新します。

AndroidX に移行する場合:

dependencies {
    implementation "androidx.core:core:1.0.0"
    // Remove the support library dependency
}

Firebase の依存関係をダウングレードする場合:

dependencies {
    implementation "com.google.firebase:firebase-messaging:18.0.0"
    // Keep the support library dependency
}

manifest.xml ファイルが次のとおりであることを確認してください。デフォルト値をオーバーライドする次の要素が含まれています:

<manifest
    xmlns:android="http://schemas.android.com/apk/res/android"
    ...
    tools:replace="android:appComponentFactory">

これらの変更を行った後、プロジェクトを再構築すると、エラーが解決されるはずです。

以上がマニフェスト マージャー エラーを解決する方法: 属性 Application@AppComponentFactory?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。