Я недавно стер свой жесткий диск и потерял несколько недель работы. Несмотря на частые коммиты, я некоторое время не продвигал свои изменения вверх по течению.
Я извлек APK моего приложения из телефона и пытался восстановить его код. Я предполагаю, что это возможно, поскольку это была тестовая сборка (и, следовательно, не запутанная или что-то подобное).
Лучший результат, которого мне удалось достичь, это использовать dex2jar , но у меня все еще есть много кода, подобного этому:
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);
Мой опыт работы с android-apktool был еще хуже, поскольку я даже не смог извлечь из него некоторый Java-код ... что и ожидается, поскольку он работает с отладкой smali.
Я прочитал все связанные с этим вопросы здесь, в SO, и я видел людей, которые говорили, что «трудно получить реальный исходный код для apk, если вы не разработчик», поэтому есть надежда, так как я разработчик.
Наконец, мой вопрос: Можно ли полностью восстановить исходный код APK, учитывая, что это была тестовая сборка из eclipse?