试图逆向工程我的应用程序,但得到一些奇怪的文件树

时间:2011-10-22 16:24:24

标签: java android reverse-engineering dex

我丢失了去年建立的所有应用程序中的代码(雷击我的硬盘,没有备份任何应用程序)。由于它们是相当简单的应用程序,我将它们置于逆向工程过程中。我已经在过去几十次这样做了,每次我都没有任何问题(如果我们不计算工作时间将所有文件整合到一个项目中)。我已经完成了在硬盘耗尽期间丢失的3个应用程序。他们几乎完美地逆转了,但我被困在了这个。

让我们详细了解一下。逆向工程进展顺利。我能够从APK中提取的编码XML文件中获取XML代码。我还能够成功地从classes.dex反编译Java代码。我得到所有文件可读,然后我可以通过文本编辑器打开/查看。

但我有一个奇怪的文件结构奇怪的文件名。项目文件位于通常路径src/com/mycompanyname/appname内。在RI处理之后,一些文件仍保留在主路径(R.java,第三方广告文件和其他一些文件中),而所有其他文件都被重新显示进入这样的文件结构:

a.java
b.java
c.java
...
z.java

我写的所有文件都被重命名并获得了这些奇怪的名字,而所有第三方文件都保持不变。

问:有谁可以告诉我这可能是什么原因?

问: Eclipse在将代码编译成APK之前是否以某种方式对代码进行了模糊处理?这是混淆的APK在通过IR流程后的样子吗?

我真的希望有人能够帮助我,因为我仍然需要重建超过10个其他应用程序。它

2 个答案:

答案 0 :(得分:7)

Android SDK包含Proguard以模糊您的代码。使用ADT在Eclipse中创建Android项目时,默认情况下会启用Proguard。但是你可以把它关掉。在此处了解更多相关信息http://developer.android.com/guide/developing/tools/proguard.html

因此...

  问:有谁可以告诉我这可能是什么原因?

这是Proguard的工作。

  问:在编译之前,Eclipse是否以某种方式模糊了代码   APK?这是混淆的APK在接通后的样子   IR流程?

它本身不是Eclipse,它是在构建过程中调用的Proguard。是的,这就是它的样子。

答案 1 :(得分:-3)

只需使用JAD。正确反编译。

相关问题