Como descompilar um arquivo APK ou DEX na plataforma Android? [fechadas]

137

É possível descompilar um pacote APK ou arquivo DEX na plataforma Android? Existem ferramentas que podem descompilar um arquivo APK?

user3151261
fonte
você quer dizer programaticamente?
Lucifer
Este link tem todas as respostas que você precisa. stackoverflow.com/questions/12732882/…
Mandar Kakade
há muitos na Play Store a alguém pode pesquisá-lo ..
Marmik

Respostas:

163

Você precisa de três ferramentas para decompile an APKarquivar.

  1. Dex2jar - Ferramentas para trabalhar com arquivos Android .dex e java .class

  2. ApkTool - A ferramenta para engenharia reversa arquivos apk Android

  3. JD-GUI - Java Decompiler é uma ferramenta para descompilar e analisar o “código de bytes” do Java 5 e as versões posteriores.

para mais informações sobre como usar o dextojar . Espero que isso ajude você e tudo! :)

Rupesh Yadav
fonte
Eu acho que todas essas ferramentas rodam na plataforma Windows. posso importar esses arquivos jar para o meu projeto android e, em seguida, executá-lo na plataforma android
#
Rupesh Yadav @ Nesse processo, algum código de linha não corresponde ao código original. www.decompileandroid.com/ a partir desta Web, posso decompilar meu código, mas os dois códigos são diferentes, por que?
Shailendr singh
1
@ Shailendrsingh acima é o processo padrão para descompilar um APK e, quando a ofuscação estiver ativada no aplicativo, o código das classes descompiladas poderá ser diferente.
Rupesh Yadav
ok se a ofuscação estiver ativada no app.how posso obter o código original que está escrito no app?
Shailendr singh
2
@Shailendrsingh só é possível se você estiver com um arquivo de mapeamento reverso, caso contrário, não poderá obter 100% de um arquivo APK.
Rupesh Yadav
32

Decompiler APK online http://www.decompileandroid.com/
http://www.javadecompilers.com/
APK Decompiler App para Windows http://forum.xda-developers.com/showthread.php?t=2493107

Atualizar ClassyShark
2015/12/04, você pode abrir arquivos APK / Zip / Class / Jar e analisar seu conteúdo. https://github.com/google/android-classyshark

BM
fonte
3
O DecompileAndroid infelizmente não descompila o strings.xml corretamente
goRGon
O ProGuard remove completamente R $ string.class, mas os descompiladores do Android podem reconstruir todas as informações de resources.arsc. Eu acho que isso DecompileAndroid não implementou esse tipo de função complicado ainda
Jacky
5

Um APK está apenas no zipformato. Você pode descompactá-lo como qualquer outro .ziparquivo.

Você pode descompilar .dexarquivos usando a dexdumpferramenta, fornecida no SDK do Android.

Consulte https://stackoverflow.com/a/7750547/116938 para obter mais informações sobre dex.

Austyn Mahoney
fonte
5

Você pode descompilar um apk no dispositivo Android usando este: https://play.google.com/store/apps/details?id=com.njlabs.showjava

Para obter mais informações, consulte aqui: http://forum.xda-developers.com/showthread.php?t=2601315

EDIT: 28-02-2015

Para descompilar um apk, você pode usar esta ferramenta: https://apkstudio.codeplex.com/license

Se isso não ajudar, verifique este link

Ultimo_m
fonte
O aplicativo nunca funcionou para mim. Ele tenta infinitamente executar "Decompiling to java" e eles geralmente
travam
então você deve seguir esta resposta stackoverflow.com/a/23924665/2736039 essas soluções funcionam muito bem
Ultimo_m
que solução tem um outro problema - ver meu comentário lá;)
Gorgon
Conheço esse problema e, para resolver isso, uso o Apk Tool. Tanto quanto eu sei, você não consegue encontrar uma ferramenta que faça todo o trabalho. Você tem que usá-los todos :)
Ultimo_m
veja a minha resposta editada eu encontrei uma nova ferramenta
Ultimo_m
5

http://www.decompileandroid.com/

Este site descompilará o código incorporado nos arquivos APK e extrairá todos os outros ativos no arquivo.

Ranjith Kumar
fonte
2
muito bom site! Eu usei por um ano. Há também alternativa: javadecompilers.com/apk , que utiliza abordagem diferente (Jadx vez de Dex2jar + Jad)
Andrew Rukin
@JqueryNinja verificar isso para alternativo - stackoverflow.com/a/27981520/3879847
Ranjith Kumar
@RanjithKumar javadecompilers.com/apk Depois de esperar longas horas em uma fila, o site descompilou meu apk. No entanto, algumas classes java estavam ausentes. Não existe outra alternativa?
iOSAndroidWindowsMobileAppsDev 12/08/16
@JqueryNinja use showjava apk. Isto é melhor que outros. mas a publicidade é mais .. play.google.com/store/apps/details?id=com.njlabs.showjava
Ranjith Kumar
@RanjithKumar showjava usa javadecompilers.com/apk ou jadx, que não descompila todas as classes java
iOSAndroidWindowsMobileAppsDev 15/16
3

Você também pode usar o apktool: http://ibotpeaches.github.io/Apktool/, que também fornecerá os arquivos xml res. Além disso, você também pode usar o sistema dex2jar que produzirá o arquivo dex no apk para um arquivo jar que pode ser aberto com JD-GUI e exportado para arquivos java padrão.

w9jds
fonte
0

Além disso, você pode usar o Android Multitool. Você pode fazer pequenas alterações no aplicativo, como ocultar elementos da GUI ou modificar uma pequena parte do Logic e reconstruir o apk. É fácil de usar e descompilar / recompilar arquivos apk e jar. Aqui está o link que você pode conferir.

Felicidades

azul verdadeiro
fonte