我笔记本电脑上的硬盘刚刚崩溃,我丢失了过去两个月一直在开发的应用程序的所有源代码。我只有一个APK文件,它存储在我发给朋友的电子邮件中。
有没有办法从这个APK文件中提取我的源代码?
我笔记本电脑上的硬盘刚刚崩溃,我丢失了过去两个月一直在开发的应用程序的所有源代码。我只有一个APK文件,它存储在我发给朋友的电子邮件中。
有没有办法从这个APK文件中提取我的源代码?
当前回答
是的,这是可能的。
有很多软件可以对android.apk文件进行反向工程。
最近,我在我的网站上整理了47个最好的APK反编译器的最终列表。我把它们分成4个不同的部分。
开源APK分解器在线APK分解器适用于Windows、Mac或Linux的APK解压缩程序APK分解器应用程序
我希望这本书对你有帮助。
链接:https://www.edopedia.com/blog/best-apk-decompilers/
其他回答
apktool是你能尝试的最好的方法。我用它保存了一些xml,但老实说,我不知道它如何与.java代码一起工作。
我建议您拥有一个代码库,即使您是唯一的程序员。我一直在为自己的项目使用Project Locker。它为您提供免费svn和git repo。
我将向您展示反编译.apk文件的其他方法。
你可以按照“恶作剧漱口”的前两步来做。所以你还有另外一个机会:
步骤3':
下载“JD-GUI”,很容易找到这个。在“jd-gui.exe”中打开.jar文件。(文件>打开文件>找到.jar文件)。完成此过程后,您可以将所有资源保存在.zip文件中。
So,
第一个-必须将.apk文件重命名为.zip
第二步-必须解码.dex文件(如果需要,可以将.apk文件解码为dex2jar)
第三-您必须使用JD-GUI解码.jar文件
有一个应用程序可以实现这一点,通常只需点击几下即可完成。https://github.com/Nuvolect/DeepDive-Android
选择应用程序,在“已安装的应用程序”下选择您的应用程序。如果不是在那里你可以加载APK。选择“提取APK”选择“解压缩APK”选择“使用Jadx分解”。这可能需要几秒钟或几分钟,具体取决于取决于设备的速度
之后,您可以浏览源代码,使用elFinder将其下载到另一台计算机,或使用Lucene进行搜索。
除了Jadx,它还有CFR和Fernflower反编译器。
是的,这是可能的。
有很多软件可以对android.apk文件进行反向工程。
最近,我在我的网站上整理了47个最好的APK反编译器的最终列表。我把它们分成4个不同的部分。
开源APK分解器在线APK分解器适用于Windows、Mac或Linux的APK解压缩程序APK分解器应用程序
我希望这本书对你有帮助。
链接:https://www.edopedia.com/blog/best-apk-decompilers/
我个人建议Show Java Android App获取源代码。您可以从play商店或此处下载