Saya telah menambahkan beberapa gambar dengan format * .png ke direktori drawable saya dan menautkannya dengan tata letak. Tetapi setiap kali saya mencoba membangunnya, muncul kesalahan
"... Crunching Crunsher ... png gagal"
Berikut adalah output dari konsol tersebut:
app:mergeDebugResources
AAPT out(1561599) : No Delegate set : lost message:Done
AAPT out(12956469) : No Delegate set : lost message:Done
AAPT out(20612543) : No Delegate set : lost message:Crunching C:\Dev\StudioProjects\test\android\app\src\main\res\drawable\bt_meeting_focused.png
AAPT out(11030156) : No Delegate set : lost message:Crunching C:\Dev\StudioProjects\test\android\app\src\main\res\mipmap-mdpi\ic_launcher.png
AAPT out(11030156) : No Delegate set : lost message:Crunching single PNG file: C:\Dev\StudioProjects\test\android\app\src\main\res\mipmap- mdpi\ic_launcher.png
AAPT out(11030156) : No Delegate set : lost message: Output file: C:\Dev\StudioProjects\test\android\app\build\intermediates\res\debug\mipmap-mdpi-v4\ic_launcher.png
AAPT out(11030156) : No Delegate set : lost message:Done
AAPT err(11030156): libpng error: Not a PNG file
AAPT out(20612543) : No Delegate set : lost message:Crunching single PNG file: C:\Dev\StudioProjects\test\android\app\src\main\res\drawable\bt_meeting_focused.png
AAPT out(20612543) : No Delegate set : lost message: Output file: C:\Dev\StudioProjects\test\android\app\build\intermediates\res\debug\drawable\b t_meeting_focused.png
AAPT out(20612543) : No Delegate set : lost message:Done
AAPT err(20612543): libpng error: Not a PNG file
AAPT err(1561599): libpng error: Not a PNG file
AAPT err(12956469): libpng error: Not a PNG file
FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeDebugResources'.
> Crunching Cruncher uhr.png failed, see logs
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or -- debug option to get more log output.
BUILD FAILED
Total time: 14.598 secs
Executing tasks: [clean, :app:generateDebugSources, :app:generateDebugAndroidTestSources]
Configuration on demand is an incubating feature.
:app:clean
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:checkDebugManifest
:app:preReleaseBuild UP-TO-DATE
:app:prepareComAndroidSupportSupportV42220Library
:app:prepareDebugDependencies
:app:compileDebugAidl
:app:compileDebugRenderscript
:app:generateDebugBuildConfig
:app:generateDebugAssets UP-TO-DATE
:app:mergeDebugAssets
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources
:app:mergeDebugResources
AAPT out(14080484) : No Delegate set : lost message:Done
AAPT out(9206750) : No Delegate set : lost message:Done
AAPT out(25360025) : No Delegate set : lost message:Done
AAPT err(25360025): libpng error: Not a PNG file
AAPT err(14080484): libpng error: Not a PNG file
AAPT out(6423170) : No Delegate set : lost message:Crunching C:\Dev\StudioProjects\test\android\app\src\main\res\drawable\anfrage_senden_.png
AAPT err(6423170): libpng error: Not a PNG file
AAPT out(6423170) : No Delegate set : lost message:Crunching single PNG file: C:\Dev\StudioProjects\test\android\app\src\main\res\drawable\anfrage_senden_.png
AAPT out(6423170) : No Delegate set : lost message: Output file: C:\Dev\StudioProjects\test\android\app\build\intermediates\res\debug\drawable\a nfrage_senden_.png
AAPT out(6423170) : No Delegate set : lost message:Done
AAPT err(9206750): libpng error: Not a PNG file
Process list not empty
:app:mergeDebugResources FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeDebugResources'.
> Crunching Cruncher uhr.png failed, see logs
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or -- debug option to get more log output.
BUILD FAILED
Total time: 4.325 secs
Saya mencoba untuk membersihkan proyek, membangunnya kembali, menyegarkan ketergantungan melalui "gradlew clean build --refresh-dependencies", tidak ada yang berhasil. Saya telah memeriksa dependensi dalam file build.gradle tetapi sepertinya tidak ada yang membuat kesalahan.
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
compileOptions.encoding = 'windows-1251'
defaultConfig {
applicationId "com.example.benutzer.test"
minSdkVersion 16
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile 'com.android.support:support-v4:22.2.0'
}
Tahukah Anda, apa sumber kesalahannya? Filepathnya juga tidak terlalu panjang dan setiap ada 256 tanda, itu juga bukan masalah: /
Terima kasih sebelumnya :)
Jawaban:
Dalam kasus saya, kesalahan tersebut disebabkan oleh file PNG yang saya tambahkan ke folder drawable. Saya telah mengubah ekstensinya dari jpg menjadi png dengan mengubah teksnya (dengan cara yang tidak benar) dan kemudian mengunggahnya sebagai PNG.
Ini adalah masalah yang ditunjukkan oleh Android Studio.
Saya memperbaiki masalah ini dan membuat kesalahan hilang dengan mengubah ekstensi file menggunakan alat Paint.NET atau alat lain (cara yang tepat), lalu mengunggahnya ke folder drawable.
sumber
Saya memperbaiki masalah ini dengan memindahkan proyek ke direktori luar, dan kemudian berhasil dikompilasi.
Itu karena jalur direktori proyek yang panjang.
Misalnya, saya memindahkan proyek dari:
untuk
sumber
Ini karena menambahkan gambar dalam drawable yang memiliki beberapa ekstensi seperti (.jpg), dan Anda telah mengubah atau menyimpannya ke format .png (kesalahan ini akan terjadi saat mengubah format gambar secara manual tanpa menggunakan alat editor).
Android Studio akan membuat kesalahan saat menyusun paket sumber daya menggunakan AAPT (Android Asset Packaging Tool), jadi yang perlu Anda lakukan hanyalah menggunakan beberapa alat editor gambar seperti GIMP atau Paint untuk menyimpan ekstensi yang sesuai. Bangun kembali proyek Anda setelah semuanya selesai.
Misalnya: buka gambar Anda di Paint (seret dan jatuhkan gambar Anda untuk membukanya) → menu File → Save As → Save as Type → pilih jenis yang Anda inginkan dari dropdown seperti yang saya tunjukkan pada gambar di bawah ini:
sumber
Dalam kasus saya, solusinya sederhana. Saya memindahkan seluruh proyek ke lokasi lain yang jalurnya pendek.
Masalahnya disebabkan oleh nama direktori dan nama file yang panjang.
sumber
Solusi terbaik adalah mengubah buildDir di build.gradle :
Sebagai contoh:
Buat ulang dan selamat membuat kode.
sumber
Dalam kasus saya, saya memecahkan masalah ini hanya dengan mengubah file perpustakaan saya karena saya membuat kesalahan konyol dengan menambahkan dua versi berbeda dari perpustakaan yang sama.
Karena ini dapat disebabkan oleh berbagai alasan, saya menemukan cara berikut untuk menyelesaikan masalah ini sesuai masalah:
Ketidakcocokan sumber daya
Atribut hilang, tag salah, dll. Dalam sumber daya
Masalah gaya
Nama hilang dalam gaya
Duplikasi sumber daya dan perpustakaan
Kadang-kadang bahkan dapat diselesaikan dengan mengubah pustaka yang kompatibel di build.gradle
Menjalankan
aapt
perintahMengganti nama ekstensi dari .jpg menjadi .png
Cukup dengan bantuan
Clean Project
.sumber
Ini karena file PNG Anda tidak didukung atau Anda mengganti nama file Anda secara langsung.
Lakukan langkah-langkah berikut.
Masalah terpecahkan :)
sumber
Dalam kasus saya, ketika saya membuat file 9.png, file PNG asli saya menggunakan margin di mana garis 9.png digambar, membuat file 9.png yang buruk. Coba tambahkan beberapa margin ke file PNG Anda.
sumber
Jika Anda menjalankan Linux, coba ini:
Itu dari sini .
sumber
Jawaban terbaik sudah diberikan dalam keluaran gradle:
Buka Terminal di Android Studio dan jalankan
gradlew :app:mergeDebugResources --stacktrace
. (Dalam kasus saya, itu adalah batas karakter Windows 240), tetapi itu juga akan memberi Anda akar penyebab untuk masalah lain apa pun.sumber
Dalam kasus saya, saya yakin masalah ini berkaitan dengan panjang jalur file. Sistem UNIX dan Windows memberlakukan panjang jalur maksimum 255 dan 260 karakter, dan saya yakin proses krisis gagal saat menetapkan ke jalur yang ditentukan secara dinamis. Jadi, meskipun panjang jalur yang dikutip dalam pesan kesalahan lebih pendek dari batas (milik saya hanya 187 dalam lingkungan build Windows), saya pikir utilitas crunch dapat secara internal menentukan jalur yang lebih panjang, bahkan jika hanya untuk sementara.
Anda dapat menentukan apakah ini sumber kesalahan dengan memindahkan proyek Anda ke direktori paling root pada sistem file Anda, lalu coba kompilasi ulang.
sumber
Saya mencoba membangun kembali, memulai ulang, membersihkan, memperbarui Gradle, dll. Namun, tidak ada yang berhasil untuk saya.
Terkadang, hal ini dapat disebabkan oleh penamaan yang salah untuk XML atau file sumber daya.
Setidaknya, bagi saya, masalah itu diselesaikan dengan mengganti nama.
sumber
Saya perhatikan bahwa mendowngrade alat build Gradle ke 1.2.3 memecahkan masalah saya dari kesalahan Crunching PNG, tetapi pada 1.5.0 masalahnya terus berlanjut.
sumber
sumber
Saya telah memasukkan gambar saya ke dalam folder drawable saya di awal proyek, dan itu akan selalu memberi saya kesalahan ini dan tidak pernah membangun jadi saya:
Saya tidak tahu mengapa ini berhasil untuk saya, tetapi itu berhasil. Semoga berhasil dengan kekacauan ini yang kami sebut Android Studio.
sumber
Proses Crunching adalah proses persiapan gambar, yang berarti ada yang salah dengan file gambar Anda. Dalam kasus saya, saya memiliki file PNG yang sebenarnya bukan file PNG.
Solusi saya:
Saya mengonversi semua gambar saya ke PNG menjalankan skrip Python super sederhana dari dalam folder gambar, jadi secara total yang perlu Anda lakukan adalah:
Untuk menginstal perpustakaan PIL, jalankan:
pip install pillow
Simpan kode Python di bawah ini dalam file .py dalam folder gambar Anda yang ingin Anda konversi.
Sesuaikan variabel from_format, to_format dalam skrip dengan apa pun yang Anda butuhkan.
Jalankan skrip:
python script_name.py
Dan jika Anda ingin membaca lebih lanjut tentang modul Image: http://effbot.org/imagingbook/image.htm
sumber
Saya menghadapi masalah ini ketika saya menyalin gambar saya (tidak peduli JPEG atau PNG) ke dalam folder drawable secara manual. Mungkin ada berbagai jenis solusi sementara untuk masalah ini, tetapi satu cara terbaik selamanya adalah menggunakan plugin importir Drawable untuk Android studio .
Instal dengan masuk ke: menu File → Settings → Plugins → Browse Repositories → cari "Drawable". Anda akan menemukan importir Drawable sebagai opsi pertama. Klik instal di panel kanan.
Gunakan dengan mengklik kanan pada folder Sumber daya yang dapat digambar dan kemudian baru. Sekarang Anda dapat melihat empat opsi baru ditambahkan ke bagian bawah daftar, dan di antaranya Anda akan menemukan opsi yang sesuai. Dalam hal ini, "Impor drawable batch" akan berhasil.
sumber
Saya mendapat masalah ini setelah migrasi ke Gradle 3.3, di Windows (dengan gradle-2.14.1 semuanya baik-baik saja).
Masalahnya ada di jalur ke build-cache Gradle, yang berisi karakter Sirilik, seperti
Jadi saya mengganti nama folder pengguna menjadi "Ivan", dan masalahnya hilang.
sumber
Tampaknya ini adalah masalah buruk Gradle. Kami baru saja meningkatkan dari 2.14 ke 3.3 dan server build kami tidak dapat membangun lagi (build lokal di Android Studio berfungsi).
Kesalahan dengan jalur yang terlalu panjang menunjukkan misalnya:
Kami harus membuat akun pengguna lokal untuk layanan yang berjalan sebagai layanan sistem selama bertahun-tahun ... Sekarang disimpan di bawah C: \ Users ... yang jauh lebih pendek sebagai jalur profil sistem.
sumber
Saya mengubah lokasi aplikasi dan menyalinnya ke jalur pendek. Anda dapat melakukannya hanya dengan menyalin proyek Anda dan menempelkannya ke Lokasi Singkat baru. Dan, itu berhasil untuk saya.
Sebagai contoh,
sumber
Menutup Android Studio dan membuka lagi menyelesaikan masalah ini dalam kasus saya.
Cobalah. Saya tahu ini bukan solusi atau jawaban yang tepat, tetapi berhasil. Saya tidak yakin tentang akar masalahnya. Akan sangat bagus jika seseorang dapat membagikannya.
sumber
Saya mengimpor aplikasi Android di Android Studio (Gradle versi 2.10) dari Eclipse. Gambar drawable tidak didukung, lalu hapus gambar tersebut secara manual dan tempelkan beberapa gambar PNG.
Dan juga perbarui importir drawable Android dari repositori Android. Kemudian bersihkan dan bangun kembali aplikasi tersebut, lalu berfungsi.
sumber
Kesalahan ini terjadi pada saya karena jalur lokasi proyek saya. Ada ruang kosong di satu folder, misalnya,
Mengubahnya menjadi
Folder\AnotherFolder\MyAndroidProjects\...
dan menyinkronkan ulang Gradle menyelesaikan masalah ini untuk saya.sumber
Saya juga menghadapi masalah ini, dan itu belum diselesaikan dengan memformat ulang gambar meskipun itu adalah gambar dari aplikasi proyek Google, dan itu hanya diselesaikan dengan:
Memindahkan file proyek ke partisi secara langsung
Cobalah. Ini mungkin membantu Anda.
sumber
Dalam kasus saya, saya mencapai solusi dalam dua langkah:
sumber
Saya juga menderita masalah yang sama. Dalam kasus saya, saya baru saja menyalin gambar ke folder drawable, lalu Android Studio menampilkan kesalahan "Beberapa file gagal berderak".
Masalah saya mengenai gambar hanya karena gambar itu disimpan dari salah satu aplikasi kamera kustom saya dalam format .png. Dan untuk tujuan pengujian, saya menyalinnya ke folder drawable.
Setelah itu saya menguji menyimpan gambar sebagai .jpg. Itu tidak memberikan kesalahan apapun. Artinya, kamera secara default mendukung format ".jpg".
Akhirnya saya menyadari dua hal:
Kamera secara default mendukung format ".jpg"
Tanpa menggunakan alat gambar, jangan ubah format gambar (bahkan secara terprogram).
sumber
Cukup tambahkan ini ke file local.properties proyek Anda:
(Kesalahan di Windows karena jalur yang panjang, jadi saya memberikan jalur ke satu folder sementara.)
sumber
Bagi saya, itu karena salah satu file .png saya sebenarnya adalah file .psd. Simpan kembali ke file PNG asli, dan sudah diperbaiki.
sumber
Bagi saya, itu adalah file PNG yang rusak .
Buka
res
folder Anda dan coba buka setiap gambar. Saat Anda menemukan gambar yang tidak bisa dibuka, gantilah dengan gambar yang bagus.sumber
Untuk mengatasi masalah ini Anda harus menggunakan drawable -> new -> image asset dan kemudian menambahkan gambar Anda. Anda kemudian akan menemukan folder mipmap berisi gambar Anda, dan Anda dapat menggunakannya dengan @ mibmab / img.
sumber