Eliminar todos los recursos no utilizados de un proyecto de Android

Resuelto Steve Prentice asked hace 54 años • 17 respuestas

Quiero eliminar todos los diseños, cadenas, elementos de diseño, colores, etc. no utilizados de mi directorio res de Android. ¿Existe alguna herramienta que me proporcione una lista de archivos que pueda eliminar de mi repositorio y elementos dentro de archivos específicos (por ejemplo, entradas de cadenas no utilizadas) que ya no se utilizan?

Steve Prentice avatar Jan 01 '70 08:01 Steve Prentice
Aceptado

Puede buscar fácilmente recursos no utilizados desde Android Studio. Simplemente presione CtrlAltShiftiy escriba " recursos no utilizados " (sin comillas). Eso ejecutará pelusa. Una forma muy sencilla de ejecutar comandos de pelusa (y otras cosas del IDE).

O

En Menú de Android Studio > Refactor > Eliminar recursos no utilizados...

Seleccione los recursos que desea eliminar. Puede excluir los recursos que desea conservar haciendo clic derecho en el elemento del recurso.

Utilice Do Refactor para eliminar todos los recursos a la vez.

Actualización: uso OptionShiftipara mac

bakua avatar Jul 28 '2015 06:07 bakua

Desde ADT 16 puedes usar Android Lint . Es una herramienta realmente asombrosa.

Android Lint es una nueva herramienta para ADT 16 (y Tools 16) que escanea las fuentes de proyectos de Android en busca de posibles errores.

A continuación se muestran algunos ejemplos de los tipos de errores que busca:

  • Traducciones faltantes (y traducciones no utilizadas)
  • Problemas de rendimiento del diseño (todos los problemas que solía encontrar la antigua herramienta de diseño, y más)
  • Recursos no utilizados
  • Tamaños de matriz inconsistentes (cuando las matrices se definen en múltiples configuraciones)
  • Problemas de accesibilidad e internacionalización (cadenas codificadas, falta de descripción de contenido, etc.)
  • Problemas con los íconos (como densidades faltantes, íconos duplicados, tamaños incorrectos, etc.)
  • Problemas de usabilidad (como no especificar un tipo de entrada en un campo de texto)
  • Errores manifiestos y muchos más.

Sin embargo, tiene algunos problemas (no sé si ya están solucionados) y si desea eliminar cientos de recursos supuestamente no utilizados, recomendaría compilar manualmente el proyecto varias veces durante la eliminación de recursos para asegurarse de que Lint no lo haya hecho. eliminar algo necesario.

Andrei Buneyeu avatar Dec 14 '2011 16:12 Andrei Buneyeu

Dado que finalizó el soporte para ADT en Eclipse, tenemos que usar Android Studio.

En uso de Android Studio 2.0+Refactor > Remove Unused Resources...

ingrese la descripción de la imagen aquí

devops avatar Apr 28 '2016 20:04 devops

El sistema de compilación Gradle para Android admite la "reducción de recursos": la eliminación automática de recursos que no se utilizan, en el momento de la compilación, en la aplicación empaquetada. Además de eliminar recursos en su proyecto que realmente no son necesarios en tiempo de ejecución, esto también elimina recursos de las bibliotecas de las que depende si su aplicación realmente no los necesita.

Para habilitar esto, agregue la línea ShrinkResources true en su archivo gradle.

   android {
        ...

        buildTypes {
            release {
                minifyEnabled true //Important step
                shrinkResources true
            }
   }
}

Consulta la documentación oficial aquí,

http://tools.android.com/tech-docs/new-build-system/resource-shrinking

Prokash Sarkar avatar Jul 28 '2015 07:07 Prokash Sarkar

Tenga cuidado si utiliza varios sabores cuando ejecuta pelusa. Lint puede proporcionar recursos falsos no utilizados según el sabor que haya seleccionado.

MRodrigues avatar Apr 14 '2016 08:04 MRodrigues