¿Cómo descompilar un archivo APK o DEX en la plataforma Android? [cerrado]

138

¿Es posible descompilar un paquete APK o un archivo DEX en la plataforma Android? ¿Hay alguna herramienta que pueda descompilar un archivo APK?

usuario3151261
fuente
¿quieres decir con programáticamente?
Lucifer
Este enlace tiene todas las respuestas que necesita. stackoverflow.com/questions/12732882/…
Mandar Kakade
hay muchos en Play store que alguien puede buscarlo ..
MarmiK

Respuestas:

164

Necesita tres herramientas para decompile an APKarchivar.

  1. Dex2jar : herramientas para trabajar con archivos Android .dex y java .class

  2. ApkTool - Una herramienta para la ingeniería inversa de archivos apk Android

  3. JD-GUI : Java Decompiler es una herramienta para descompilar y analizar Java 5 "código de bytes" y las versiones posteriores.

para más de-uso-dextojar . ¡Espero que esto te ayude a ti y a todos! :)

Rupesh Yadav
fuente
Creo que todas estas herramientas se ejecutan en la plataforma de Windows. ¿Puedo importar estos archivos jar a mi proyecto de Android y luego ejecutarlos en la plataforma de Android
user3151261
Rupesh Yadav @ En este proceso, algún código de línea no coincide con el código original. www.decompileandroid.com/ de esta web puedo descompilar mi código pero ambos códigos son diferentes ¿por qué?
Shailendr singh
1
@Shailendrsingh lo anterior es el proceso estándar para descompilar un APK y en caso de que la ofuscación esté habilitada en la aplicación, el código de las clases descompiladas puede diferir.
Rupesh Yadav
ok si la ofuscación está habilitada en la aplicación, ¿cómo puedo obtener el código original que está escrito en la aplicación?
Shailendr singh
2
@Shailendrsingh es posible solo si tiene un archivo de mapeo inverso, de lo contrario no puede obtener el 100% de un archivo APK.
Rupesh Yadav
32

Decompilador de APK en línea http://www.decompileandroid.com/
http://www.javadecompilers.com/
Aplicación de descompilador de APK para Windows http://forum.xda-developers.com/showthread.php?t=2493107

Actualización 2015/12/04
ClassyShark puede abrir archivos APK / Zip / Class / Jar y analizar su contenido. https://github.com/google/android-classyshark

BM
fuente
3
DecompileAndroid desafortunadamente no descompila strings.xml correctamente
goRGon
ProGuard elimina por completo R $ string.class, pero los descompiladores de Android pueden reconstruir toda la información de resources.arsc. Creo que este DecompileAndroid aún no ha implementado este tipo de función complicada
Jacky
11

He creado una herramienta que combina dex2jar, jd-core y apktool: https://github.com/dirkvranckaert/AndroidDecompiler. Simplemente revise el proyecto localmente y ejecute el script tal como está documentado y obtendrá todos los recursos y fuentes descompilados.

dirkvranckaert
fuente
5

Un APK solo está en zipformato. Puede descomprimirlo como cualquier otro .ziparchivo.

Puede descompilar .dexarchivos con la dexdumpherramienta, que se proporciona en el SDK de Android.

Consulte https://stackoverflow.com/a/7750547/116938 para obtener más información sobre dex.

Austyn Mahoney
fuente
5

Puede descompilar un apk en un dispositivo Android usando esto: https://play.google.com/store/apps/details?id=com.njlabs.showjava

Para obtener más información, consulte aquí: http://forum.xda-developers.com/showthread.php?t=2601315

EDITAR: 28-02-2015

Para descompilar un apk, puede usar esta herramienta: https://apkstudio.codeplex.com/license

Si eso no ayuda, verifique este enlace

Ultimo_m
fuente
La aplicación nunca funcionó para mí. Intenta infinitamente realizar "Descompilación a Java" y generalmente se bloquea ..
goRGon
entonces debería seguir esta respuesta stackoverflow.com/a/23924665/2736039 estas soluciones funcionan muy bien
Ultimo_m
esa solución tiene otro problema - vea mi comentario allí;)
goRGon
Conozco ese problema y para resolverlo utilizo la herramienta Apk. Por lo que sé, no puedes encontrar una herramienta que haga todo el trabajo. Tienes que usarlos todos :)
Ultimo_m
compruebe mi respuesta editada He encontrado una nueva herramienta
Ultimo_m
5

http://www.decompileandroid.com/

Este sitio web descompilará el código incrustado en los archivos APK y extraerá todos los demás activos en el archivo.

Ranjith Kumar
fuente
2
Muy buen sitio web! Lo usé por un año. También hay una alternativa: javadecompilers.com/apk , que utiliza un enfoque diferente (Jadx en lugar de Dex2jar + Jad)
Andrew Rukin
@JqueryNinja verifica esto para alternativas - stackoverflow.com/a/27981520/3879847
Ranjith Kumar
@RanjithKumar javadecompilers.com/apk después de esperar largas horas en una cola, el sitio web descompiló mi apk. Sin embargo, faltaban algunas clases de Java. ¿No hay otra alternativa?
iOSAndroidWindowsMobileAppsDev
@JqueryNinja usa showjava apk. Esto es mejor que otros. pero la publicidad es más ... play.google.com/store/apps/details?id=com.njlabs.showjava
Ranjith Kumar
@RanjithKumar showjava usa javadecompilers.com/apk o jadx que no descompila todas las clases de java
iOSAndroidWindowsMobileAppsDev
3

También puede usar el apktool: http://ibotpeaches.github.io/Apktool/ que también le dará los archivos de resolución xml. Junto con eso, también puede usar el sistema dex2jar que generará el archivo dex en la apk en un archivo jar que se puede abrir con JD-GUI y exportar a archivos java estándar.

w9jds
fuente
0

También puedes usar Android Multitool. Puede realizar cambios menores en la aplicación, como ocultar elementos de la GUI o modificar una pequeña parte de Logic y reconstruir el apk. Es fácil de usar y descompila / recompila archivos apk y jar. Aquí está el enlace que puedes pagar.

Salud

Azul verdadero
fuente