我正在通过创建 aar 文件来编写 Android Studio 库。我将此文件安装在专用网络的 maven 存储库上。我现在正在尝试让用户只知道类名称和方法名称,在 Stackoverflow库混淆中使用 proguard的这个问题的帮助下,但没有成功。我成功地只对几个类名和构造函数名这样做,而方法名混淆为字母(a(),b()......)。现在,当我在 build.gradle 文件中本地获取库时,一切正常
implementation(files('C:\\Users\\User\\AndroidStudioProjects\\android-app2\\app\\build\\outputs\\aar\\app-open.aar'))
Run Code Online (Sandbox Code Playgroud)
但不是那样
api('xx.yyy.sdk:app:1.0.0@aar') { transitive = true }
Run Code Online (Sandbox Code Playgroud)
第一个包括显示所有类及其名称和方法名,而第二个只显示几个类名和构造函数名称,正如我之前写的。
项目的 build.gradle 文件
buildscript {
dependencies {
classpath 'com.android.tools.build:gradle:3.4.1'
}
}
Run Code Online (Sandbox Code Playgroud)
保护文件
#
# This ProGuard configuration file illustrates how to process a program
# library, such that it remains usable as a library.
# Usage:
# java -jar proguard.jar @library.pro
#
# Specify the input jars, output jars, and library jars.
# In this case, the …Run Code Online (Sandbox Code Playgroud)