Kesalahan - Penautan sumber daya Android gagal (AAPT2 27.0.3 Daemon # 0)


95

Saya mengalami kesalahan ini

Saya mencoba menginstal ulang android studio dan menghapus folder .gradle, ada solusi apa saja?

    Error:FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugResources'.
> Android resource linking failed (AAPT2 27.0.3 Daemon #0)
  Command: C:\javasdk\build-tools\27.0.3\aapt2.exe link -I\
          C:\javasdk\platforms\android-26\android.jar\
          --manifest\



  C:\Users\Jalal D\.gradle\caches\transforms-1\files-1.1\fonticon-0.1.8.aar\2b09376fc14469ba65fc8e4d85c2eed1\res\values\values.xml:19:5-25:25: AAPT: error: resource android:attr/fontVariationSettings not found.

  C:\Users\Jalal D\.gradle\caches\transforms-1\files-1.1\fonticon-0.1.8.aar\2b09376fc14469ba65fc8e4d85c2eed1\res\values\values.xml:19:5-25:25: AAPT: error: resource android:attr/ttcIndex not found.

  error: failed linking references.

* 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.

* Get more help at https://help.gradle.org

BUILD FAILED in 1m 3s

Jawaban:


50

Punya masalah yang persis sama. Selesaikan dengan melakukan hal berikut: Mencari dan mengganti com.android.support:support-v4:+ dengan com.android.support:support-v4:27.1.0 di direktori platform / android.

Saya juga harus menambahkan kode berikut ke file platforms / android / app / build.gradle dan platforms / android / build.gradle:

configurations.all {
resolutionStrategy {
    force 'com.android.support:support-v4:27.1.0'
}}

Diedit untuk menjawab "Di mana setelan com.android.support:support-v4:+ ini?" ...

Pengaturannya mungkin (dalam hal ini) akan berada di salah satu file .gradle plugin Anda di direktori platform / android /, misalnya dalam kasus saya itu adalah plugin starter-barcodescanner jadi cukup buka semua file .gradle plugin Anda:

masukkan deskripsi gambar di sini

Periksa kembali file platforms / android / build.gradle.

Semoga ini membantu.


Terima kasih menyelamatkan kami!
Ramesh Murugesan

Terima kasih Anda menyelamatkan hari saya !! Saya punya hari-hari dengan masalah ini yang keluar dari malam kepada saya tanpa mengetahui bagaimana aplikasi saya berhenti bekerja
LMoreno10

Tidak percaya solusinya begitu sederhana, yang diperlukan hanyalah menyalin tempel ke dua file gradle itu! Tepuk !!
Shyam

Menemukan salah satu alasan masalah ini Ketika kita menggunakan string, gaya, warna, dll., Dalam manifes yang tidak ada dalam nilai (string.xml, style.xml, color.xml, dll,) maka jenis kesalahan ini terjadi .
Wisnu Magar

Perbaikan ini juga berfungsi saat dependensi diperbarui di Android studio. IDE sendiri akan menunjukkan di file bahwa versi ini harus cocok dengan
SDK yang

91

The sumber daya Android menghubungkan gagal kesalahan juga dapat muncul jika Anda memiliki kesalahan dalam setiap sumber daya Anda XML. Dalam kasus saya, saya menggunakan baris berikut dua kali di salah satu XML drawable saya di folder drawable:

<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>

Saya menghapus baris duplikat dan kesalahannya menghilang. Kesalahan itu agak menyesatkan:

Gagal menghubungkan sumber daya Android Output: / Users / johndoe / Desktop / myapp / app / src / main / res / layout / activity_main .xml: 2: error: resource drawable / bg_main (alias com.example.myproject: drawable / bg_main) tidak ditemukan.

Menurut kesalahan di atas, hal pertama yang perlu Anda lakukan adalah membuktikan pembacaan semua sumber daya dapat digambar yang diakses di activity_main karena kemungkinan lebih tinggi Anda akan menemukan kesalahan tersebut. Dalam skenario terburuk, Anda mungkin akan memeriksa semua file sumber daya Anda.


4
Ini. Ini memecahkan masalah saya. Sangat menjengkelkan bahwa kesalahan ini tidak ditandai oleh IDE dan kesalahan penautan berbicara tentang hal lain sepenuhnya.
ocramot

4
ibu tuhan!
Mihir Patel

1
milik saya sebenarnya: <?xml version="1.0" encoding="UTF-8"?><?xml version="1.0" encoding="UTF-8"?> (pada baris yang sama: P lebih sulit dideteksi)
Alan Deep

1
<meta-data android:name="com.google.android.actions" android:resource="@xml/my_event_session_menu" />
Milik

2
1 untuk menghemat waktu saya. Yang paling menjengkelkan adalah Android Studio menunjuk ke file yang salah, yang menyebabkan saya menggaruk-garuk kepala karena file yang dikatakannya tidak bisa ditautkan baik-baik saja.
Suku Mesin

46

Catatan: Android Studio mengeluarkan banyak kesalahan gila seperti ini jika Anda meningkatkan pustaka dukungan ke 28.0.0dan Anda compileSdkVersionjuga bukan 28.


14
Saya sudah memiliki keduanya compileSdkVersion 28dan support-v4:28.0.0saya mendapatkan kesalahan yang sama :(
ocramot

1
@ocramot Saya memperbaiki masalah dengan menurunkan compileSdkVersion ke 27
suvojit_007

1
+1. Proyek saya memiliki dua modul dan saya memiliki versi yang berbeda (satu 29 dan yang lainnya 27). Ketika saya mengatur semuanya menjadi 29 kesalahan itu hilang
voghDev

Terima kasih! Dalam kasus saya, saya harus menyetel 'minSdkVersion' ke sama dengan 'compileSdkVersion'. Jika tidak, hanya build pertama yang akan berjalan, dan semua operasi ulang selanjutnya akan gagal dengan kesalahan yang sama seperti OP
Jim B

7

Jika Anda menggunakan Windows 10, dan Android Studio 3.2, Anda cukup membuka aplikasi build.gradle , dan mengubah versinya.

Di bawah dependensi, ubah versi, dan build / sync


Ini adalah Module Gradle. Klik tautan di atas untuk melihat tangkapan layar.
Syed Raza

3
Apakah Windows 10 merupakan persyaratan?
IgorGanapolsky

7

Masalah diperbaiki untuk saya dengan mengganti compileSdkVersion 23dengan compileSdkVersion 28dalam build.gradle (Project: build).


Bekerja untuk saya, terima kasih! Saya masih memilikiminSdkVersion 23
Stephen Hosking

@StephenHosking Apakah ini berhasil untuk Anda tanpa meningkatkan compileSdkVersiondari 23ke 28? Jika demikian, masalah apa yang awalnya Anda alami?
Jaime Montoya

Saya seharusnya lebih jelas. Solusi Anda, yaitu. ganti compileSdkVersion 23dengan compileSdkVersion 28bekerja untuk saya, tetapi saya baru saja menyebutkan bahwa dapat pergi minSdkVersion 23, sebagai info tambahan tentang solusi yang benar. Masalah asli saya adalah "Kesalahan - penautan sumber daya Android gagal"
Stephen Hosking

@Fennyaputri Baik itu berhasil untuk Anda sekarang.
Jaime Montoya

4

Saya mengimpor warna baru ke proyek saya dan mendapatkan masalah yang sama. Jadi saya membuka styles.xmldan menetapkan ulang item ke warna menggunakan nama warna baru.


4

Saya menyelesaikannya dengan menambahkan @+id/ sebelum semua ID saya.

yaitu @+id/your_item_id


Ini tidak memberikan jawaban yang benar atas pertanyaan tersebut. memberikan jawaban yang benar dan bagaimana Anda melakukannya dan apa masalahnya ?. \
Yohan Malshika

4

merasa sangat bodoh - (untuk alasan apa pun) saya punya satu xml kosong di folder drawable. dan AS menghasilkan lusinan kesalahan yang tidak terkait> <

jadi, saran umum saya akan sama - periksa sebentar setiap file resource.


3

com.android.support:support-v4 baru saja mendapatkan update dan mungkin mempengaruhi plugin yang menggunakan versi update dalam dependensinya. Tetapi jika Anda tidak dapat menemukannya di dependensi (seperti jika Anda menggunakan plugin crosswalk), cukup letakkan kode ini di atas plugin gradle kode Anda (tidak perlu menambahkan pada build.gradle).

configurations.all {
resolutionStrategy.force 'com.android.support:support-v4:24.0.0'
}

Contoh lokasi untuk meletakkan kode plugin penyeberangan di sini

Jangan ragu untuk mengedit versi com.android.support (JANGAN GUNAKAN 28.0.0) karena itulah masalahnya


2
Terima kasih banyak. Saya menggunakan 27.1.0seperti yang disebutkan @RFourie.
Ramesh Murugesan

2

Harus ada beberapa kesalahan dalam file sumber daya. Ini berarti mungkin ada nilai atribut yang terlewat. Telusuri file sumber daya dan perbaiki nilai ini dan nikmati pekerjaannya.


2

Ada beberapa alasan untuk masalah ini dan alasan ini terutama ada pada file build.gradle level resource atau aplikasi.

Dalam kasus saya, tampilan di file resource tidak memiliki dependensi yang diperlukan yang disertakan dalam file build.gradle.

Jadi, pastikan untuk menyertakan semua dependensi yang diperlukan dalam file build.gradle.


2

Periksa versi plugin Gradle Anda . Coba turunkan jika Anda telah memperbarui ke versi yang lebih baru sebelum masalah ini muncul. Buka File -> Struktur Proyek . Ubah ke versi sebelumnya.


1

Coba perbarui versi build terbaru, versi target dan kompilasi, serta perbarui dependensi tetapi tidak berfungsi untuk saya

Dalam kasus saya, perubahan <meta-items/>menjadi <meta-data/>karya nyata untuk saya ...

Semoga bermanfaat bagi seseorang ...


1

Saya memiliki masalah yang sama, tetapi itu karena di tombol saya layout_width / height saya lupa meletakkan dp di akhir saat mengeditnya. Menambahkan dp dan masalah diperbaiki: /


1

Dalam kasus saya, saya secara tidak sengaja menulis:

app:displayViewTitle="@string/instructions_defineExtract_confirm_email"

Menariknya, Android Studio dapat menavigasi string melalui CTRL + klik. Itu hanya memberikan kesalahan Build Time. Mengubah ke standar "pemisahan titik" berhasil

app:displayViewTitle="@string/instructions.defineExtract.confirm.email"

1

Menemukan salah satu alasan yang menyebabkan masalah ini

Saat kami mencoba menggunakan salah satu

string, gaya, warna, dll,

dalam file manifes yang tidak ada dalam nilai (string.xml,style.xml,color.xml,etc,)maka jenis kesalahan ini terjadi


1

saya mendapat bug yang sama, dan saya memperbaikinya ketika saya menutup AndroidStudio dan menghapus dir seperti C:\Users\Jalal D\.gradle\caches\transforms-1\di info kesalahan build.


1

Saya memiliki masalah yang sama dan menyelesaikannya dengan membuka File -> Struktur Proyek ... -> Saran dan kemudian Terapkan semua. Seperti yang disarankan oleh @JeffinJ, saya pikir masalahnya adalah karena pembaruan plugin Gradle.


0

Saya mengalami masalah yang sama tetapi saya keluar dari solusi masalahnya adalah Anda menggunakan hal apa pun dalam ketergantungan yang sesuai dengan domain yang sama tetapi dengan versi yang berbeda pastikan semuanya sama


Saya menginstal Android Studio 3.3.2 tadi malam. Saya seorang pemula yang lengkap. Saya membuat aplikasi "Flutter" dan mencoba menjalankannya. Saya mendapatkan output berikut dan menghubungkan pesan kegagalan:
Elliot

0

Saya menghadapi masalah yang sama dan itu diselesaikan dengan menghapus kesalahan dari file sumber daya seperti gaya, file warna dalam folder nilai. Dalam kasus saya, kesalahan dalam warna gaya seperti di bawah ini:

 <style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar">
    <item name="android:textColorPrimary">**@color/colorPrimary**</item>
    <item name="android:textColorSecondary">**@color/colorPrimaryDark**</item>
</style>

0

Mengubah versi pustaka dukungan yang terakhir diaktifkan (28.0.0) dengan sebelumnya (27.1.0) , kesalahan Android Resource Linking Failedmenghilang.

Perlu dicatat bahwa versi 27.1.0 adalah versi maksimum yang diizinkan dalam implementasi kami, yang berfungsi, tetapi Anda dapat menggunakan versi yang lebih lama jika Anda mau. Dan ini harus digunakan di semua dependensi yang dimulai dengan stringcom.android.support:

proyek / app / build.gradle

implementation "com.android.support:appcompat-v7:$rootProject.supportLibraryVersion"
implementation "com.android.support:support-v4:$rootProject.supportLibraryVersion"

project / build.gradle

ext {
    supportLibraryVersion= '27.1.0'
}

Kemudian, Sinkronkan Proyek dengan File Gradle

GL


0

Masalah yang sama terjadi pada saya, tetapi sebelum mendapatkan kesalahan ini, aplikasi saya berjalan. Jadi saya baru saja melakukan undo 2/3 kali. Dan melakukan perubahan lagi. Dan membangun app.app berjalan dengan sukses.


0

Saya menemukan masalah yang sama setelah menambahkan ketergantungan berikut:

implementation 'com.evernote:android-state:1.4.1'
annotationProcessor 'com.evernote:android-state-processor:1.4.1'

Dan alasannya adalah versi terbaru evernote menggunakan dependensi ke AndroidX, sementara saya memiliki pustaka dukungan versi 27.1.1 dalam proyek saya. Jadi ada opsi untuk meningkatkan pustaka dukungan ke 28.0.0, seperti yang disarankan oleh jawaban lain, tetapi itu agak rumit untuk proyek besar dengan banyak tampilan khusus. Jadi, saya menyelesaikan masalah dengan menurunkan versi evernote ke 1.3.1.


0

Ini mungkin terdengar biasa, tetapi bagi saya Build > Clean Projectmemperbaiki kesalahan ini tanpa perubahan lain.


0

Bagi saya, kesalahan muncul setelah mengubah ikon peluncur saya menggunakan Asset Studio. Ternyata ic_launcher_foreground.xmlfile yang dibuat kehilangan baris berikut di bagian atas file: <?xml version="1.0" encoding="utf-8"?>


Punyaku serupa. Saya menambahkan Varian Build baru dan mengalami dua kesalahan ini. Yang pertama tidak masuk akal, tetapi saya menggali kesalahan kedua dan menemukan bahwa build ini hilang ic_launcher.png
ja928

0

Saya menggunakan Studio 3.3.1 Build dari 28 Jan.

Bagi saya, saya mendapatkan "kesalahan penautan sumber daya android gagal" yang menunjuk ke baris dalam file tata letak menggunakan ConstraintLayout yang telah berfungsi dengan benar hingga hari ini ketika satu-satunya perubahan pada file gradle tingkat aplikasi saya adalah memperbarui versi:

android.arch.navigation:navigation-fragment
android.arch.navigation:navigation-ui

dari 1.0.0-rc01ke 1.0.0-rc02.

Pesan kesalahan mengatakan sesuatu tentang tidak mengenali layout_constraintTop_toTopOfyang tentu saja konyol karena telah disusun dengan cukup bahagia selama berbulan-bulan.

Saya sudah menggunakan 28.0.3 alat pembangunan dan compileSdkVersion28. Saya telah menggunakan di androidx.appcompatmana-mana untuk beberapa waktu sekarang (mengubah proyek ini berbulan-bulan kembali ke androidx).

Saya pertama kali menjalani proyek bersih (tidak ada bantuan), dan membuat cache / restart tidak valid (tidak ada bantuan). Tata letak yang dipermasalahkan awalnya ditentukan menggunakan

<TextView>, <EditText>dan <ImageView>komponen (yang berfungsi dengan baik hingga hari ini).

Tetapi setelah membaca jawaban di atas saya pikir mungkin entah bagaimana ada kebingungan yang disebabkan di sini jadi saya mengubah tata letak untuk menggunakan:

<androidx.appcompat.widget

versi dari semua berbagai komponen. Tidak ada perubahan - masih mendapat kesalahan.

Saya kemudian menghapus <androidx.appcompat.widget.AppCompatTextViewblok yang menyebabkan kesalahan kompilasi. Saya mengubah semua referensi ke sana di widget lain untuk merujuk ke "induk" sebagai gantinya. Berhasil. Kali ini kompilasi selesai tanpa kesalahan .

Jadi sesuatu yang aneh dalam definisi widget itu saya pikir .... inilah itu:

<androidx.appcompat.widget.AppCompatTextView
    android:id="@+id/contact_firstname_label"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:text="@string/contact_fname_label"
    android:gravity="end"
    android:textAppearance="@android:style/TextAppearance.Material.Small"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toLeftOf="@+id/contact_detail_fname"
    app:layout_constraintBaseline_toBaselineOf="@+id/contact_detail_fname"/>

Saya kemudian menempelkan kembali blok yang saya potong Ctrl-V sebelumnya dan mengubah referensi kembali ke ID itu di komponen lain yang mereferensikannya dalam tata letak. Kompilasi gagal .

Saya memotong blok lagi dan menempelkannya ke WordPad. Kemudian membaca dari pasta WordPad, saya benar-benar mengetiknya kembali (kali ini saya tidak menyalin / menempel) - baris demi baris, membuat proyek setelah saya mengetik dalam definisi minimal, dan kemudian lagi setelah itu ketika saya letakkan di setiap baris baru. Setiap kali proyek dikompilasi dengan rapi!

Aku tidak tahu harus berbuat apa. Mungkin beberapa karakter palsu yang tidak terlihat ada di file aslinya?


0

Dalam kasus saya, saya secara tidak sengaja menata properti yang hanya ada di tombol dan menambahkan gaya itu untuk TextView.

<!-- applied to TextViews -->
<style name="rowStyle"> 
    <item name="android:padding">3dp</item>
    <item name="android:borderlessButtonStyle">false</item> <!-- this caused the error -->
    <item name="android:background">@drawable/textview_border</item>
</style>

Menghapus baris dengan android:borderlessButtonStylememperbaiki masalah.


0
  • Klik kanan pada folder drawable dan pilih "Show in Explorer" .
  • Cari gagal file dalam sistem file dibuka, pilih mereka (atau pilih file di seluruh ditarik), kemudian copy mereka ke ditarik-v24 berkas (tidak menghapus file ditarik dan menciptakan jika tidak ada file ditarik-v24 ).
  • Kemudian pilih File -> Invalidate Caches / Restart dan
  • mulai ulang Android Studio.

Poin 1 & 2 Berfungsi untuk saya. Tapi sekarang saya perlu menempatkan file yang gagal di dua tempat satu di drawable dan lainnya di drawable-v24.
Aman Goyal

0

Jika Anda mengalami ini: dalam kasus saya, saya memiliki string yang diterjemahkan, tetapi string tersebut belum muncul di strings.xml default. Menambahkan string yang hilang ke strings.xml dan berhasil diselesaikan.


0

Dalam kasus saya, kesalahan tersebut mengarah ke file AndroidManifest.xml. Saya memiliki baris ini:

<meta-data
            android:name="com.google.android.actions"
            android:resource="@xml/popup_info.xml" />

Yang mana, saya tidak yakin mengapa Android Studio meletakkannya di sana. Saya tidak mengubah file manifes saya, dan ini tidak pernah terjadi sampai saya memutakhirkan ke versi 3.5.3 - jadi AS pasti telah melakukannya untuk saya. Bagaimanapun, garis itu seharusnya terlihat seperti ini:

<meta-data
            android:name="com.google.android.actions"
            android:resource="@layout/popup" />

Begitu saya mengubahnya, semuanya baik-baik saja.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.