¿Qué medidas siguen los desarrolladores para hacer que las aplicaciones móviles Android de pago sean a prueba de piratería?

¡Nada! ¡Es imposible! Un hacker determinado siempre encontrará una forma de evitarlo. Pero eso no significa que debas dejar la puerta abierta para que él entre a la fiesta. Los métodos que he enumerado asegurarán que le hagas pasar un mal rato al pirata informático / pirata y algunas noches sin dormir.

Poner código importante en un servidor

Puede confiar en llamadas a procedimientos remotos a un servidor bien protegido. Esto reduce la posibilidad de que sus códigos sean robados, ya que el código siempre permanecerá en el servidor y no se podrá ver nada más que los resultados. Sin embargo, esto tiene un inconveniente, si su aplicación va a ser utilizada por muchos usuarios (millones), necesitará tener una gran granja de servidores.

Si una gran granja de servidores es algo que no puede permitirse, aún puede mantener el código en los servidores que no desea sacar. Mantenga siempre el código en un hardware que controle. Recuerde, la protección segura de un servidor es fácil de forma electrónica y física.

Use ProGuard

Es una herramienta de ofuscación que ayuda a proteger las aplicaciones que utilizan un servidor con licencia. Aumenta la dificultad de “revertir” su código. DexGuard, una versión comercial de Proguard, hace un esfuerzo adicional y ayuda un poco más. Pero su código siempre se puede convertir en samli, que los desarrolladores pueden usar para aprender qué hacer con él. Nuevamente, si no desea que otros vean su código, no lo almacene en su dispositivo.

Técnicas de detección de depurador

Puede leer acerca de estas técnicas de detección de depurador para asegurarse de que su protección sea lo suficientemente difícil de romper. Diríjase a la base de datos de Técnicas de ingeniería inversa de OpenRCE.

Escribir partes importantes de código en C / C ++
También puede escribir las partes importantes de su código en C / C ++ y agregarlas como una biblioteca compilada. Si bien se puede desmontar en código de ensamblaje, la ingeniería inversa de una gran biblioteca desde el ensamblaje consume mucho tiempo. Java es más fácil de descompilar en comparación con C / C ++ .

Escribir archivos de forma nativa en archivos .so

Con NDK puede escribir los archivos de forma nativa en archivos .so, que tienen muchas menos probabilidades de descompilarse que los APK. Hay algunos buenos descompiladores disponibles, pero eso requeriría que el atacante sea competente en arquitectura de procesador ARM, lenguaje ensamblador, convenciones JNI y compilador ABI. Le estás dando al atacante competente algunas noches sin dormir.

Ofuscar valores al almacenarlos en dispositivos móviles

Almacénelos en forma de algún algoritmo, es decir, 50 puntos de recompensa en su aplicación podrían ser (x * (x ^ 2 + 1 – Factor de neutralización)) / (x + 1). Sin embargo, debe optimizar su algoritmo para que no termine comprometiéndose al redondear los valores.

Fuente: evita la ingeniería inversa de tu aplicación de Android

Otra forma de ver esta pregunta sería, no la prevención, sino trabajando lo que ya tiene en posesión como sus recursos (como se destacó anteriormente, nunca es 100% efectivo y con el tiempo se puede filtrar y agrietar cualquier cosa). Por supuesto, pensar en este problema en el momento del desarrollo es crucial, sin embargo, ¿qué haría si ya está sucediendo y cómo asegurar sus futuras versiones ?

Existe una tecnología especial Tapcore que le permite recuperar los ingresos que de otro modo se perderían y realizar un seguimiento de las estadísticas de copias ilegales. Suena bien, ¿eh? Por eso pienso.

Realmente no hay otra solución en el mercado que yo sepa que realmente pueda comenzar a traer ingresos a los titulares de derechos de autor desde el primer día. Si quieres saber más, no dudes en enviarme un mensaje de Skype: lisadmit

Para los juegos, puede probar las características antipiratería mencionadas aquí:
Anti piratería

O puede usar la función de licencia en la aplicación de Android. Más detalles se enumeran en esta respuesta SO –
Cómo asegurar mi aplicación contra la piratería