Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Proguard mantiene nombres de clase?

Hola, estoy escribiendo una aplicación para Android y he configurado Proguard para ocultar mi aplicación. Sin embargo, utilizo un cargador de clases para cargar dinámicamente diferentes extensiones a mi aplicación. El problema es que estos no se cargan correctamente si se cambian sus nombres. ¿Cómo evito que Proguard ofusque nombres de clases específicos?

  • ¿Cómo podemos cambiar el color de fondo de un hilandero?
  • Java.lang.SecurityException:! @Too muchas alarmas (500) registradas de pid 10790 uid 10206
  • Android studio 2.0 bug: no hay cambios para implementar
  • Android Studio no está generando apk
  • Obtener mínimo de la columna de la base de datos SQLite?
  • ¿Por qué obtengo este error cuando agrego la biblioteca de clientes de Google Translate a mi proyecto de Android?
  • ¿Cómo puedo poner límites a la matriz de traducción de mi lienzo?
  • Desplazamiento suave de una lona en Android
  • Android Studio Signed APK no está instalando
  • ObjectAnimator animar LinearLayout ancho
  • Java.net.UnknownHostException: No se puede resolver el host "<url>": ninguna dirección asociada con hostname y End of input en el carácter 0 de
  • Android - cómo forzar a que el niño reemplace el método padre que tiene código
  • 3 Solutions collect form web for “¿Proguard mantiene nombres de clase?”

    Utilice la opción -keepnames en su proguard.cfg

    Consulte el manual https://www.guardsquare.com/es/proguard/manual/usage#keepoptions :

    -keepnames class_specification

    -keep,allowshrinking de -keep,allowshrinking class_specification

    Especifica las clases y los miembros de clase cuyos nombres deben conservarse, si no se eliminan en la fase de reducción. Por ejemplo, es posible que desee conservar todos los nombres de clases de clases que implementan la interfaz Serializable, de modo que el código procesado permanezca compatible con cualquier clase serializada originalmente. Las clases que no se usan en absoluto se pueden quitar. Sólo aplicable cuando se ofusca.

    Esto mantiene intactos los nombres de clase:

     -keepnames class com.somepackage.* 

    Consejo práctico para todos los que no quieren que ProGuard cambie el nombre de una clase:

     # please KEEP ALL THE NAMES -keepnames class ** { *; } 

    De esta manera obtendrá rastros de pila legibles mientras sigue tirando cosas que no necesita. Todos los derechos reservados

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.