我笔记本电脑上的硬盘刚刚崩溃,我丢失了过去两个月一直在开发的应用程序的所有源代码。我只有一个APK文件,它存储在我发给朋友的电子邮件中。
有没有办法从这个APK文件中提取我的源代码?
我笔记本电脑上的硬盘刚刚崩溃,我丢失了过去两个月一直在开发的应用程序的所有源代码。我只有一个APK文件,它存储在我发给朋友的电子邮件中。
有没有办法从这个APK文件中提取我的源代码?
当前回答
apktool是你能尝试的最好的方法。我用它保存了一些xml,但老实说,我不知道它如何与.java代码一起工作。
我建议您拥有一个代码库,即使您是唯一的程序员。我一直在为自己的项目使用Project Locker。它为您提供免费svn和git repo。
其他回答
Android工作室为您提供分析任何apk文件的功能。
1-从构建菜单中选择分析apk选项并选择apk文件。2-这将导致classes.dex文件和其他文件。3-单击classes.dex,它将为您提供文件夹、包、库和文件的列表。4-从和android工作室设置安装一个名为“Dex to Jar”的插件5-单击提取项目的任何活动文件,然后从构建菜单中选择dex-to-jar。
这将生成java文件的实际代码。
干杯
Android应用程序的APK文件可以使用以下任何方法反编译:
APKTool(需要在电脑上安装Java)APKTool M(Android应用程序)JavaDecompilers(在线工具包括APKTool实用程序)
资料来源:https://droidmaze.com/how-to-extract-code-from-apk/
可能是最容易看到的来源:
在Android studio 2.3中,构建->分析APK->选择要反编译的APK。你会看到它的源代码。
参考链接:https://medium.com/google-developers/making-the-most-of-the-apk-analyzer-c066cb871ea2
为了反编译APK并从中获取代码,您有多个在线工具&我通常更喜欢使用在线APK反编译程序。
它非常容易使用,几分钟内您就可以从中下载源代码。
如果你想从playstore下载APK并反编译。你也可以很容易地从它下载。
你可以试试DexPatcher。它甚至与Android Studio集成。它在内部使用Apktool和Dex2Jar。您也可以独立使用这些工具。Apktool反编译apk,并提取.dex文件,可以使用Dex2Jar将其进一步转换为jar。Jar可以使用JD-GUI反编译。在该工具的帮助下,您可以看到Java代码。尽管不能保证反编译代码与实际代码的相似性。市场上有一些高级的代码混淆工具,它们会将代码弄乱,从而使反编译/理解变得困难。例如Proguard