1

在过去的一个半月里,我一直在做一个项目,一个 Android 应用程序。今天我的电脑坏了。显然,备份并没有备份我的任何项目的源文件;它只是出于某种原因备份了可绘制文件夹?

无论如何,我想知道是否有办法以某种方式从手机上的应用程序中恢复源代码。我从来没有完全完成这个应用程序并创建了一个 .apk 或任何东西,但我在手机上运行了几次以进行调试,所以它在我的手机上处于相当新的状态。有没有办法以某种方式恢复源代码?我不想重做任何事情,但似乎我最终可能不得不这样做。

我在 Eclipse Indigo 中开始了这个项目,但后来将 IDE 切换到了 IntelliJ IDEA。我目前在我的计算机上的文件是:

  • 项目的 EML 文件。它似乎是空白的。

  • 可绘制文件夹

就是这样。有任何想法吗?

4

4 回答 4

2

您可以使用 dex2Jar 获取一个 jar,然后使用 JD-GUI 来检查代码。由于它正在反编译,因此它不会是精确的,而是接近的。

dex2jar:http ://code.google.com/p/dex2jar/

JD-GUI:http: //java.decompiler.free.fr/

于 2012-08-04T06:42:57.207 回答
1

您可以将其视为一种选择:

它是一个用于逆向工程第三方、封闭、二进制 Android 应用程序的工具。它可以将资源解码为几乎原始的形式,并在进行一些修改后重建它们;它使逐步调试 smali 代码成为可能。由于类似项目的文件结构和一些重复性任务(如构建 apk 等)的自动化,它也使使用应用程序更容易。

http://code.google.com/p/android-apktool/

于 2012-08-04T03:49:12.757 回答
0

您可以尝试使用文件恢复软件从硬盘中恢复已删除的文件(如果它正在工作)。这些软件对我从格式化的 SDCARD 中恢复图片很有帮助。所以你可以试一试。

于 2012-08-04T04:42:15.267 回答
0

您也许可以使用 IntelliJ IDEA 的“本地历史”功能。IntelliJ 会跟踪您.IntelliJIdea10在使用主页文件夹中的所有编辑。如果该文件夹在崩溃中没有损坏,您应该能够恢复所有代码。

只需右键单击Project选项卡中的模块目录,然后选择Local History > Show History。等待历史项目列表加载,可能需要几秒钟。右键单击左侧面板中的项目并选择Revert

于 2012-08-04T13:29:54.120 回答