Ralat Penggabungan Manifes: Duplikat Attribute application@appComponentFactory
Dalam projek Android yang disediakan, anda menghadapi ralat berikut:
ERROR: Manifest merger failed : Attribute application@appComponentFactory value=(androidx.core.app.CoreComponentFactory) from [androidx.core:core:1.0.0] AndroidManifest.xml:22:18-86 is also present at [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91 value=(android.support.v4.app.CoreComponentFactory). Suggestion: add 'tools:replace="android:appComponentFactory"' to element at AndroidManifest.xml:9:5-44:19 to override.
Ralat ini menunjukkan bahawa anda mempunyai atribut application@appComponentFactory pendua yang ditakrifkan dalam manifes Android anda, menyebabkan kegagalan penggabungan manifes. Khususnya, dua perpustakaan berbeza (androidx.core dan com.android.support) kedua-duanya mengisytiharkan atribut ini.
Penyelesaian:
Untuk menyelesaikan isu ini, anda mempunyai dua pilihan:
1. Berhijrah Sepenuhnya ke AndroidX
Pindahkan keseluruhan projek anda ke perpustakaan AndroidX, menggantikan semua perpustakaan sokongan dengan rakan androidx mereka. Ini melibatkan membuat perubahan berikut:
Contoh:
<code class="gradle">implementation "androidx.appcompat:appcompat:1.1.0" implementation "androidx.constraintlayout:constraintlayout:1.1.3"</code>
2. Turunkan Ketergantungan Firebase
Sebagai alternatif, anda boleh menurunkan taraf kebergantungan Firebase anda kepada versi yang tidak memerlukan pustaka AndroidX. Walau bagaimanapun, ini bukan penyelesaian jangka panjang, kerana Firebase sedang giat berhijrah ke AndroidX.
Contoh:
<code class="gradle">implementation "com.google.firebase:firebase-messaging:17.3.4"</code>
Nota Tambahan:
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan \'Ralat Penggabungan Manifes: Duplikat Atribut application@appComponentFactory\' dalam Android?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!