Android 恢复APK';s代码

Android 恢复APK';s代码,android,apk,Android,Apk,我最近删除了硬盘,失去了几周的工作。尽管频繁提交,但我已经有一段时间没有将更改推到上游了 我已经从手机中提取了我的应用程序的APK,我一直在尝试恢复其代码。我假设这是可能的,因为它是一个测试构建(因此,没有混淆或类似的东西) 我所能达到的最佳效果是使用,但我仍然有很多这样的代码: int i = context.getResources().getDimensionPixelSize(2131165184); int j = context.getResources().getDimension

我最近删除了硬盘,失去了几周的工作。尽管频繁提交,但我已经有一段时间没有将更改推到上游了

我已经从手机中提取了我的应用程序的APK,我一直在尝试恢复其代码。我假设这是可能的,因为它是一个测试构建(因此,没有混淆或类似的东西)

我所能达到的最佳效果是使用,但我仍然有很多这样的代码:

int i = context.getResources().getDimensionPixelSize(2131165184);
int j = context.getResources().getDimensionPixelSize(2131165184);
screenNameParams.addRule(10);
screenNameParams.addRule(1, 2131034138);
screenNameParams.setMargins(paramInt, 0, 0, 0);
甚至:

long l1 = paramLong1;
long l2 = paramLong2;
long l3 = paramLong3;
int i = paramInt;
List localList = localClient.getBetween(l1, l2, l3, i);
我的经验更糟糕,因为我甚至无法从中获得一些Java代码。。。这是预期的,因为它与smali调试一起工作

我在这里读了所有相关的问题,我看到有人说“除非你是开发人员,否则很难获得apk的实际源代码”,所以我是开发人员,这是有希望的


最后,我的问题是:考虑到APK是来自eclipse的测试构建,是否有可能完全恢复APK的原始代码?

简言之,没有。看起来您的代码是通过ProGuard运行并进行了模糊处理的(这是正常的),因此您将无法获得原始代码。在你关于开发人员的引述中,这些人基本上是在说“很难获得APK的源代码,除非你已经拥有了它,因为你是开发人员”,但在这种情况下,即使你是开发人员,你也失去了源代码


我能想到的最后一个选择是,你可以尝试找到一个硬盘恢复程序,并尽快使用它,看看你是否可以恢复你的源代码。也许您还没有覆盖这些扇区。

谢谢您的输入。ProGuard是否与ADT捆绑?我从未亲自安装或配置过它。是的,它是Android构建系统的一部分:@JaVAndroid您阅读了原始问题和我的答案了吗?他知道如何获取APK和反编译。问题是它被弄糊涂了。