首页 文章

来自apk文件的源代码恢复但与我写的不一样

提问于
浏览
3

我正在为Android创建一个应用程序,它已接近完成但现在硬盘崩溃了,我丢失了所有数据以及我的应用程序的源代码 . 但是,幸运的是我已经在我的手机上安装了该应用程序,因此我获得了应用程序的.apk文件,并使用本文中提到的步骤对文件进行了反编译,Is there a way to get the source code from an APK file?

但我有一个问题,源有一点变化,在我提到的一些地方,一些变量名称被一些数字取代 . 我附上了代码的屏幕截图,以便您可以正确查看问题 .

任何人都可以告诉我如何解决问题并恢复我写的原始代码 . 因为我不能浪费时间再次编写整个代码 .

我无法在此处上传屏幕截图,因此我粘贴了照片的链接 .

enter image description here

2 回答

  • 2

    您无法从APK恢复确切的源代码;它不在那里 . 您恢复的代码是您可以做的最好的代码 - 它是基于编译代码的近似值 .

    根据你已经恢复的截图,你很幸运能有一个高水平的东西 .

  • 3

    使用this将其转换为JAR,然后使用this获取代码 .

    变量问题可能是由混淆器 - ProGuard引起的 . 有一种方法可以对它进行去混淆,但如上所述,你已经走得很远了,你很幸运能得到你拥有的东西 .

    编辑:

    来自官方developer site

    警告:每次在发布模式下运行构建时,这些文件都会被ProGuard生成的最新文件覆盖 . 每次发布应用程序时都保存它们的副本,以便从发布版本中去除混淆错误报告 .

    我不确定您是否可以使用原始ProGuard设置对其进行去混淆...

相关问题