Evitar que Proguard elimine elementos estirables específicos
En mi proyecto de Android, tengo algunas imágenes almacenadas en res / drawable / a las que sólo se accede desde un archivo HTML cargado en una vista Web. Por ejemplo (código en HTML):
<img src="file:///android_res/drawable/myfriend.png">
Estas imágenes son eliminadas por Proguard de apk durante la optimización.
- ¿Canvas.getClipBounds asigna un objeto Rect?
- Autocompletar super rápido usando la búsqueda binaria en el archivo clasificado (300000 líneas)
- ¿Cómo hacer que RecyclerView recicle dentro de NestedScrollView?
- Detección de presencia de FPU en Android
- ¿Por qué proguard procesa AndroidManifest.xml?
¿Alguien sabe una manera de mantener estos archivos (incluso si no se utilizan directamente en el código java)?
- Simple particle system en Android usando OpenGL ES 1.0
- ¿Cómo podemos optimizar (cpu & ram) esta animación de salpicadura personalizada de android?
- Android ProGuard: Optimizaciones más agresivas
- Precisión del sueño del hilo
- Optimización: Acceso a campos y métodos
- Creación de perfiles y optimización de un juego Android
- Demasiadas actividades en Android?
- ¿Deshacer / rehacer rápidamente con el patrón del memento / comando?
Tuve un problema similar y quería añadir sólo unos pocos bits.
Los recursos NO son eliminados por ProGuard. Si simplemente descomprime su apk verá que los archivos de imagen todavía están allí.
El problema es que el Webkit FileLoader intentará cargar su clase R $ drawable usando la reflexión. Si no agrega ninguna regla keep a su archivo proguard.cfg que se renombrará, Webkit no podrá cargar su recurso.
Al colocar el archivo en la carpeta de activos que están pasando por alto el sistema de clase R y todo funcionará.
Esto no es una solución, aunque si, por ejemplo, desea utilizar diferentes recursos para diferentes densidades.
Le sugiero que simplemente agregue una regla de mantenimiento muy básica para preservar las clases y campos internos de R:
-keepclassmembers class **.R$* { public static <fields>; } -keep class **.R$*
Moví las imágenes a la carpeta 'assets' que solucionó mi problema:
<img src="file:///android_asset/myfriend.png">
- Phonegap 2.4.0 con Android 4.2 – comportamiento de doble clic extraño
- ¿Cómo puedo utilizar estilos html en cadenas con argumentos de formato?