AAR ProGuard не запутывает - PullRequest
0 голосов
/ 04 мая 2018

У меня есть проект AAR (библиотека) в Android Studio, для создания библиотеки, которую мы лицензируем. Мне нужно запутать библиотеку, которую мы выпускаем, чтобы людям было сложно декомпилироваться. Но я не могу заставить ProGuard работать. Когда я разархивирую AAR, а затем внизу «classes.jar», все имена классов остаются там же, как и переменные. Я очень слаб в использовании ProGuard, поэтому интересно, может ли сообщество помочь. У меня есть очень простой файл ProGuard, который был сгенерирован, когда Android Studio создала шаблон для проекта:

-printmapping out.map
-keepparameternames
-renamesourcefileattribute SourceFile
# -keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,EnclosingMethod
-keepattributes Exceptions

# Preserve all annotations.
-keepattributes *Annotation*

# Preserve all public classes, and their public and protected fields and methods

-keep public class * {
    public protected *;
}

1 Ответ

0 голосов
/ 14 декабря 2018

возможно, уже слишком поздно, но это может быть полезно для всех остальных. Я использую эту конфигурацию и имена переменных зашифрованы, а также параметры varialbes

-renamesourcefileattribute SourceFile
-keepattributes Exceptions
-keepattributes *Annotation*

-keep public class * {
    public protected *;
}

Я также использую эту конфигурацию в типах сборки, поэтому она не может быть отлажена

buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            debuggable false
            jniDebuggable false
            zipAlignEnabled true
        }
    }

Дайте мне знать, если это решило вашу проблему или вы нашли лучшее решение!

...