Обфускация в Android Studio
Есть ли какой-нибудь инструмент обфускации для Android Studio? Плагин IntelliGuard объявлен для поддержки в Studio, но он не работает на самом деле из-за отсутствия плагина AntSupport. Я не смог найти его в репозитории. Любые идеи?
P.S. Процесс сборки Android Studio основан на Gradle, поэтому я не ожидал увидеть там поддержку Ant. Возможно, я ошибаюсь.
Ответы
Ответ 1
Чтобы запутать код в студии Android, просто перейдите в файл build.gradle в проекте Android Studio:
![enter image description here]()
Измените свойство minifyEnabled с false на true
![enter image description here]()
Это базовое оскорбление.
После генерации apk вы можете увидеть результат обфускации, декомпилирующий apk с любым программным обеспечением, например, эта страница может вам помочь:
http://www.decompileandroid.com/
В результате обфускации вы увидите классы с именем: a, b, c....
![enter image description here]()
И переменные и методы обфускации будут иметь также имена, такие как aa, c, ac...
![enter image description here]()
Чтобы запутать код в более сложной форме, вы можете перейти в приложение корневого каталога и создать файл .pro, например, на следующем рисунке. Я создал файл: proguard-rules-new.pro, в том же в каталоге вы должны увидеть файл proguard-rules.pro
![enter image description here]()
Теперь добавьте файл, который вы создали, в файл build.gradle
![enter image description here]()
И отредактируйте файл .pro, который вы создали, со своими правилами пользовательских правил proguard
![enter image description here]()
Ответ 2
Сначала включите minifyEnabled
в вашем файле build.gradle, например
minifyEnabled true
После этого добавьте строки ниже в файл progurad-rules.txt
-keep class yourpackage.** { *; }
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-verbose
Для проверки его работоспособности перейдите по ссылке:
http://www.javadecompilers.com/apktool веб-сайт, чтобы вы могли проверить после декомпиляции.
Это сработает, и ваши занятия будут полностью скрыты.
Ответ 3
Android сентябрь 2018 года выпускает новый инструмент R8 инструмент сокращения и запутывания.
R8 - R8 - это инструмент для сокращения и уменьшения java-кода, который преобразует Java-байт-код в оптимизированный код dex
- Открыть
gradle.properties
- Добавить
android.enableR8 = true
в
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
org.gradle.jvmargs=-Xmx1536m
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
android.enableR8 = true
Минимальные требования:
- Android-студия версии 3.2, сентябрь 2018 г. или выше
- Java 8
R8 Tool
Ответ 4
Proguard хорошо поддерживается на студии Android. Вы должны настроить Gradle, чтобы запустить его. Инструкции: http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Running-ProGuard