2017-01-10 4 views
2

Я переделал (With1, With2 и вручную) некоторые из файлов APK Android, загрузив их из Google Play Store, но не получил точного указания на использование proguard.Как проверить, что Android APK поддерживает Proguard или нет?

Есть ли способ узнать, какой файл Android APK имеет использование proguard в обратном запрограммированном коде?

И

В чем разница между ProGuard и без использования Proguard обратного проектирования кода?

То, что я получил в обратном сконструированного код:

  1. В некоторых из кода файла APK-имена классов, как а, Ь, с, d и их имена пакетов также таким же образом. Код был настолько сложным, структурированным после декомпиляции и не мог легко понять.
  2. Некоторые файлы APK имеют легко отформатированный код. Их декомпилированный код выглядит так же, как и для нормальной структуры кода. Имя класса и имена пакетов читаются, но в коде некоторые функции имеют код несогласованности.

Если APK подписан с Android Studio, то по умолчанию pro guard будет включен, как я знаю, почему все APK не имеют такой же декомпилированной структуры кода?

+0

Вы прочитали: https://developer.android.com/studio/build/shrink-code.html, в частности раздел с надписью «Настроить, какой код сохранить» –

+0

Вы имеете в виду, что использование minifyEnabled true приведет к созданию структура кода, как a, b, c, d ... отформатирована? Или это связано с использованием Proguard? –

+0

Прежде всего, Proguard не будет включен по умолчанию для подписанного apk, вы должны вручную включить его. Теперь создайте два проекта, одного и того же кода. В первом коде включить Proguard, а в других отключить его. Как правило, apk, который включен Proguard, будет трудно определить правильное имя классов. Предположим, что ваше имя класса - MyFirstAndroidClass, затем после включения Proguard вы увидите, что имя класса изменяется после декомпиляции. После включения Proguard вы можете найти все ссылки в этом файле. app/build/output/mapping/debug/mapping.txt – Shekhar

ответ

0

Вы должны декомпилировать код и посмотреть, имеют ли классы имена A, B, C в хронологическом порядке. Если классы имеют имена в A, B, C, это означает, что .apk является защитой proguard.

+0

Если я подписал сборку с Android Studio, то по умолчанию включена функция proguard. В этом коде я не получил имена файлов, таких как A, B, C ... файлы с одним и тем же именем. –

Смежные вопросы