Saya ingin menghapus semua tata letak, string, drawable, warna, dll yang tidak digunakan dari direktori res Android saya. Apakah ada alat yang akan memberi saya daftar file dan saya dapat menghapus dari repositori dan elemen dalam file spesifik (misalnya entri string yang tidak digunakan) yang tidak lagi digunakan?
sumber
Sejak ADT 16 Anda dapat menggunakan Android Lint . Ini alat yang luar biasa.
Namun, ada beberapa masalah (tidak tahu apakah sudah diperbaiki) dan jika Anda ingin menghapus ratusan sumber daya yang seharusnya tidak digunakan, saya akan merekomendasikan untuk secara manual mengkompilasi proyek beberapa kali selama penghilangan sumber daya untuk memastikan bahwa Lint tidak melakukannya. hapus sesuatu yang dibutuhkan.
sumber
Analyze > Inspect Code...
untuk menemukan sejumlah hal, termasuk Deklarasi dan Metode yang Tidak Digunakan .lint --check UnusedResources <project-path>
Extra Translations
bersama / secara otomatis?Karena Dukungan untuk ADT di Eclipse telah berakhir, kita harus menggunakan Android Studio.
Di Android Studio 2.0+ digunakan
Refactor > Remove Unused Resources...
sumber
Sistem pembangunan Gradle untuk Android mendukung "penyusutan sumber daya": penghapusan sumber daya secara otomatis yang tidak digunakan, saat membangun, di aplikasi yang dikemas. Selain menghapus sumber daya dalam proyek Anda yang sebenarnya tidak diperlukan saat runtime, ini juga menghapus sumber daya dari perpustakaan tempat Anda bergantung jika mereka tidak benar-benar dibutuhkan oleh aplikasi Anda.
Untuk mengaktifkannya, tambahkan baris shrinkResources true di file gradle Anda.
Lihat dokumentasi resmi di sini,
http://tools.android.com/tech-docs/new-build-system/resource-shrinking
sumber
minifyEnabled true
Kami membuka sumber alat yang menghapus semua sumber daya yang tidak digunakan dalam proyek android Anda berdasarkan pada keluaran serat. Itu dapat ditemukan di sini: https://github.com/KeepSafe/android-resource-remover
sumber
Waspadalah jika Anda menggunakan berbagai rasa saat menjalankan serat. Lint dapat memberikan sumber daya palsu yang tidak digunakan tergantung pada rasa yang telah Anda pilih.
sumber
Di Android Studio 2.0 dan di atas dalam menu pilih Refactor -> klik Hapus Sumber Daya Tidak Digunakan ...
(atau)
pintas juga tersedia
Tekan Ctlr + Alt + Shift + i satu kotak dialog akan muncul, lalu ketik yang tidak digunakan , Anda akan menemukan sejumlah opsi pilih dan hapus sumber daya yang tidak digunakan
sumber
Di Android Studio,
Analisis -> Jalankan Inspeksi berdasarkan Nama
(Pintasan Untuk Mac shift + perintah + opsi + i, Ctrl + Shift + A di Windows / Linux).
Dan ketik 'sumber daya yang tidak digunakan'.
Dengan cara ini Anda dapat menghapus sumber daya yang tidak terpakai, variabel, simbol, lokalisasi, perpustakaan .. dll.
Pilih inspeksi yang diinginkan dari daftar, lalu pilih lingkup inspeksi -> OK
sumber
Perhatian pengembang Android Wear : "Hapus Sumber Daya Tidak Digunakan" akan menghapus file xml di mana Anda mendeklarasikan nama kemampuan (res / values / wear.xml) dan telepon tidak akan dapat terhubung ke arloji. Saya menghabiskan waktu berjam-jam untuk mencari tahu bug ini di aplikasi saya.
sumber
Untuk memeriksa string.xml.
Sangat mudah (setidaknya dalam versi Eclipse saya)
Di Eclipse untuk Android (saya punya versi v22.6.2-1085508)
Sekarang ketika Anda membuka strings.xml, Anda akan melihat bahwa string yang tidak digunakan disorot.
Anda dapat memperbaiki masalah potensial lainnya.
sumber
Mungkin Andround Unused Resources yang berguna adalah aplikasi Java yang akan memindai proyek Anda untuk sumber daya yang tidak digunakan. Sumber daya yang tidak terpakai tidak perlu menghabiskan ruang, menambah waktu pembuatan, dan mengacaukan daftar lengkapi-otomatis IDE.
Untuk menggunakannya, pastikan direktori kerja Anda adalah root dari proyek Android Anda, dan jalankan:
java -jar AndroidUnusedResources.jar
https://code.google.com/p/android-unused-resources/
sumber
Ketika kita mendefinisikan menyusutkan sumber daya benar saat itu kita juga dapat menentukan sumber daya mana yang ingin kita simpan dan mana yang tidak saya tambahkan file xml di res / folder mentah bernama keep.xml
sebelum melangkah lebih jauh, buatlah alat yang ditandatangani dan diperiksa di apk alat analisis yang akan menunjukkan drawable-xhdpi-v4 memiliki messenger_button_send_round_shadow.png yang ingin saya hapus untuk pengujian ini
dengan melakukan messenger_ * semua file mulai dari name messenger di folder drawable akan dihapus atau sebaliknya saya harus mendefinisikan file tertentu yang akan dihapus
sehingga dengan cara itu Anda dapat menghapus file dari pustaka itu sendiri, Anda juga dapat menghapus tata letak dengan @ tata letak / nama tata letak jika gambar itu telah digunakan oleh tata letak dan ....
sumber
Ada jawaban yang sangat bagus di sini yang menyarankan alat yang bagus
Tetapi jika Anda bermaksud untuk menghapus png-drawables (atau file gambar lainnya ), Anda juga harus mempertimbangkan untuk memindahkan semua folder drawable-xxxx dari proyek Anda ke folder sementara, kemudian lakukan membangun kembali semua, dan lihat build. daftar pesan yang akan memberi tahu Anda mana yang hilang.
Ini dapat berguna secara khusus jika Anda ingin mendapatkan ikhtisar sumber daya mana yang Anda gunakan secara efektif dan mungkin menggantinya dengan font ikon atau sumber daya svg, mungkin dengan bantuan pustaka Ikon Android .
sumber
Android Assets Viewer dirancang untuk membantu memeriksa secara visual grafik yang dikemas (sebagai drawable) dalam .apk Anda (Anda juga dapat mengunggah file zip folder res Anda jika Anda mau):
http://www.cellebellum.net/AndroidAssetsViewer/
Jadi untuk menghapus sumber daya yang tidak digunakan, ini mungkin bekerja dengan baik bersama dengan cek Lint untuk membantu memastikan semua yang seharusnya ada. Ini juga membantu Anda mengidentifikasi beberapa masalah potensial lainnya dengan drawable Anda: bucket salah, grafik salah, dll.
sumber
Setelah Anda menjalankan Lint di Android Studio dan menemukan semua sumber daya yang tidak digunakan, Anda dapat mengklik salah satunya dari tab Inspeksi. Ini memberikan beberapa detail tentang masalah ini dan beberapa opsi untuk memperbaikinya. Salah satunya adalah Hapus Semua Sumber Daya Yang Tidak Digunakan. Memilih opsi itu akan menghapus semua sumber daya yang tidak digunakan.
sumber