我的电脑坏了,戴尔重置了硬盘 . 这让我失去了两个月的app修订版 . 这是一个相当简单的应用程序,不是主要的文件大小,所以如果它可以反编译,它不应该太糟糕 . 有没有办法拿我的APK并输出源代码,或至少我的MainActivity?谢谢!
您将无法获得原始源代码,但您可以使用工具基于已编译的二进制文件创建新的源代码 . 这显然完全基于二进制文件,所以你赢得了比没有更好的东西 .
我建议从APKTool开始 . 这将解压清单并为您提供smali(Dalvik字节码汇编) . 要恢复Java级源代码,有许多Java反编译器可供选择 . 我建议尝试一下Enjarify Procyon .
除此之外,您是否尝试过磁盘恢复?根据他们对磁盘的操作,您的数据可能仍然可以恢复 .
我使用的是APKtools,你可以提取准确的java源代码,包括资源和xml .
要从APK文件获取源代码,我们将需要以下工具:1 . dex2jar 2. java decompiler 3. apktool 4. apkinstall
获取来源的步骤: -
从APK获取Java文件: - 1.将.apk文件重命名为.zip文件(例如SharedPr.apk为SharedPr.zip) .
从提取的文件夹中提取SharedPr.zip文件并复制classes.dex文件 .
解压缩dex2jar.zip并将classes.dex粘贴到dex2jar文件夹中 .
打开命令提示符并将目录更改为dex2jar文件夹 . 然后编写dex2jar classes.dex并按Enter键 . 现在,您将在同一文件夹中获取classes.dex.dex2jar文件 .
现在双击jd-gui(Java反编译器)并单击打开的文件 . 然后从该文件夹中打开classes.dex.dex2jar文件 . 现在您将获得类文件并保存所有这些类文件(单击文件,然后单击src名称中的“保存所有源”在jd-gui中) .
从APK获取XML文件: -
在文件夹中提取apktool和apkinstall(例如:新建文件夹) .
将SharedPr.apk(您的apk文件)放在同一个文件夹中(即新文件夹) .
打开命令提示符并转到根目录(即新文件夹) .
在命令提示符下键入命令:apktool d SharedPr.apk
这将在当前目录(此处为新文件夹)中生成名称为SharePr的文件夹,所有XML文件将位于res-> layout文件夹中 .
2 回答
您将无法获得原始源代码,但您可以使用工具基于已编译的二进制文件创建新的源代码 . 这显然完全基于二进制文件,所以你赢得了比没有更好的东西 .
我建议从APKTool开始 . 这将解压清单并为您提供smali(Dalvik字节码汇编) . 要恢复Java级源代码,有许多Java反编译器可供选择 . 我建议尝试一下Enjarify Procyon .
除此之外,您是否尝试过磁盘恢复?根据他们对磁盘的操作,您的数据可能仍然可以恢复 .
我使用的是APKtools,你可以提取准确的java源代码,包括资源和xml .
要从APK文件获取源代码,我们将需要以下工具:1 . dex2jar 2. java decompiler 3. apktool 4. apkinstall
获取来源的步骤: -
从APK获取Java文件: - 1.将.apk文件重命名为.zip文件(例如SharedPr.apk为SharedPr.zip) .
从提取的文件夹中提取SharedPr.zip文件并复制classes.dex文件 .
解压缩dex2jar.zip并将classes.dex粘贴到dex2jar文件夹中 .
打开命令提示符并将目录更改为dex2jar文件夹 . 然后编写dex2jar classes.dex并按Enter键 . 现在,您将在同一文件夹中获取classes.dex.dex2jar文件 .
现在双击jd-gui(Java反编译器)并单击打开的文件 . 然后从该文件夹中打开classes.dex.dex2jar文件 . 现在您将获得类文件并保存所有这些类文件(单击文件,然后单击src名称中的“保存所有源”在jd-gui中) .
从APK获取XML文件: -
在文件夹中提取apktool和apkinstall(例如:新建文件夹) .
将SharedPr.apk(您的apk文件)放在同一个文件夹中(即新文件夹) .
打开命令提示符并转到根目录(即新文件夹) .
在命令提示符下键入命令:apktool d SharedPr.apk
这将在当前目录(此处为新文件夹)中生成名称为SharePr的文件夹,所有XML文件将位于res-> layout文件夹中 .