gpt4 book ai didi

android - dexguard 库无法加密类

转载 作者:行者123 更新时间:2023-11-29 18:40:19 39 4
gpt4 key购买 nike

我尝试加密我的 android 库项目中的类。但我不能那样做。变量和字符串由 dexguard 更改,但 -encryptclasses 没有影响。我在构建输出中收到日志:

Warning: not encrypting kept class com.justexample.SomeClass1
Warning: not encrypting kept class com.justexample.SomeClass2
Warning: the configuration specifies to encrypt 2 classes that it keeps at the same time.
Not encrypting those classes to avoid problems at runtime.
Note: inner class com.justexample.SomeClass1 is unencrypted, while its outer class is encrypted.
Note: inner class com.justexample.SomeClass2 is unencrypted, while its outer class is encrypted.
Note: one or more encrypted classes have unencrypted inner classes.

我的 dexguard-project.txt 是:

-verbose
-encryptstrings com.justexample.SomeClass1
-encryptclasses com.justexample.SomeClass1, com.justexample.SomeClass2

还有我的模块 gradle:

apply plugin: 'com.android.library'
apply plugin: 'dexguard'

android {
compileSdkVersion 25
defaultConfig {
minSdkVersion 16
targetSdkVersion 25
versionCode 1
versionName gitVersionName()
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFile getDefaultDexGuardFile('dexguard-library-release.pro')
proguardFile 'dexguard-project.txt'

}
}
sourceSets { main {
assets.srcDirs = ['src/main/assets', 'src/androidTest/assets/']
} }
}

dependencies {
//my dependecies
}

最佳答案

您正在使用默认库配置:dexguard-library-release.pro,默认情况下将保留所有公共(public)/ protected 类。

您不能加密保留的类。

要解决该问题,请使用激进的配置:dexguard-library-release-aggressive.pro 并指定不应混淆的库的公共(public) API。

别忘了使用 -repackageclasses com.mypackage.internal

将所有混淆的类移动到这个包中。

关于android - dexguard 库无法加密类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53188594/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com