Recuperar el código de un APK
Hace poco borré mi disco duro y perdí pocas semanas de trabajo. A pesar de cometer con frecuencia, no había presionado mis cambios río arriba por un tiempo.
He extraído APK de mi aplicación de mi teléfono y he estado tratando de recuperar su código. Estoy asumiendo que es posible, ya que era una prueba de construcción (y, en consecuencia, no ofuscado o nada de eso).
- Dynamic Apk en Android
- Subir nuevo APK a la producción - Error
- Reconstruir .apk utilizando Eclipse sin ejecución
- ¿Cómo pasar de APK agrietado a código java? Herramienta de 1 clic rompió mi aplicación
- Android - Cómo interceptar la intención de 'Instalar aplicación'
El mejor resultado que pude lograr fue usar dex2jar pero todavía tengo un montón de código como este:
int i = context.getResources().getDimensionPixelSize(2131165184); int j = context.getResources().getDimensionPixelSize(2131165184); screenNameParams.addRule(10); screenNameParams.addRule(1, 2131034138); screenNameParams.setMargins(paramInt, 0, 0, 0);
O incluso:
long l1 = paramLong1; long l2 = paramLong2; long l3 = paramLong3; int i = paramInt; List localList = localClient.getBetween(l1, l2, l3, i);
Mi experiencia con android-apktool fue aún peor, ya que ni siquiera era capaz de obtener algún código Java fuera de él … lo que se espera, ya que funciona con la depuración smali.
He leído todas las preguntas relacionadas aquí en SO y he visto a la gente diciendo que "es difícil obtener el código fuente real para el apk a menos que sea el desarrollador", por lo que hay esperanza ya que soy el desarrollador.
Finalmente, mi pregunta es: ¿Es posible recuperar completamente el código original de un APK, considerando que era una compilación de prueba de eclipse?
- ¿Cómo incluir la cadena de versión en el nombre de archivo al crear Android apk con hormiga?
- Enorme diferencia Apk entre gradle v1.x vs v2.x
- Copiar android .apk a otro archivo .apk a través de código java y sobre-montar sus archivos de activos?
- ¿Cómo enviar un archivo grande o varios archivos a otras aplicaciones, y saber cuándo eliminarlas?
- Cómo instalar / reemplazar en Android sin usar Eclipse
- Error al agregar el apk precompuesto con las bibliotecas compartidas a AOSP
- Cómo cargar archivos de expansión apk en la nueva consola del programador
- ¿Es posible mostrar el widget sólo para una versión android determinada?
En resumen, no. Parece que su código se ejecutó a través de ProGuard y ofuscado (como es normal) y por lo que no será capaz de obtener su código original. En su cita sobre ser el desarrollador, esas personas están diciendo básicamente que "es difícil obtener la fuente para un APK a menos que ya lo tenga porque usted es el desarrollador", pero en este caso, aunque usted es el desarrollador, usted ha Perdió la fuente.
La única opción que puedo pensar en que puede intentar es encontrar un programa de recuperación de disco duro y utilizarlo tan pronto como sea posible y ver si puede recuperar su fuente. Tal vez usted no ha sobrescrito esos sectores todavía.
- El diálogo no debe descartarse cuando cambia la orientación de la pantalla
- Mejor versión de draw9patch