Java 如何在Android Studio中启用ProGuard模糊处理?
我必须在Android Studio中启用Proguard模糊处理来保护我的应用程序。我一直在寻找如何应用它的过程,但没有得到任何明确的解决方案。当我尝试它时,我总是会出错。那么,有人能告诉我在我的应用程序中应用它的明确步骤吗 我将通过以下步骤来实现这一点:Java 如何在Android Studio中启用ProGuard模糊处理?,java,android,android-studio,Java,Android,Android Studio,我必须在Android Studio中启用Proguard模糊处理来保护我的应用程序。我一直在寻找如何应用它的过程,但没有得到任何明确的解决方案。当我尝试它时,我总是会出错。那么,有人能告诉我在我的应用程序中应用它的明确步骤吗 我将通过以下步骤来实现这一点: 在Android Studio中,打开一个Android项目 更改为项目视图 更改以下行: minifyEnable false到minifyEnable true 设置程序保护规则(可选) 4.1在项目视图中,选择proguard-rul
minifyEnable false
到minifyEnable true
-keepclassmembers class com.dom925.xxxx
{
public *
}
错误:任务“:app:packageRelease”的执行失败。 无法计算D:\Android\Pojectname\app\build\intermediates\classes proguard\release\classes.jar的哈希值
我解决了问题: 打开项目的proguard-rules.pro并将其添加到底部:
-dontwarn java.nio.file.Files
-dontwarn java.nio.file.Path
-dontwarn java.nio.file.OpenOption
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
基本上,我是如何解决这个问题的,我试图在“发布”模式下运行我的应用程序,但遇到了一系列类似于这家伙的错误:
我几乎完全按照他说的去做,并把它修好了
希望这可以帮助其他人生成他们的APK
请访问此处了解更多详细信息:
在Android Studio中启用ProGuard 下面是如何在Android Studio中启用默认ProGuard的示例
proguardFiles getDefaultProguardFile('proguard-android.txt')
以启用默认设置。如果要使用自己的proguard文件,请使用以下规则
buildTypes {
release {
debuggable false
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
debuggable true
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
有关更多详细信息,请浏览如果您正在使用jack构建android项目,那么它将自动进行收缩、模糊处理、重新打包和多重索引。 只需在中添加以下内容:
defaultConfig {
jackOptions {
enabled true
}
}
在构建类型中,提到项目proguard
文件:
buildTypes {
release {
// Jack build environment does not require minifyEnabled or shrinkResources.
// Conceptually, the jack compiler consolidates the functionality of javac, ProGuard, and dex in a single conversion step
//minifyEnabled = true
//shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
}
debug {
...................
}
}
要禁用ProGuard模糊处理,需要在ProGuard-project.txt文件中添加以下行
####No obfuscation
-dontobfuscate
发布你的build.gradle,这样我们就可以根据你的依赖性做出更准确的回答这里有一些参考,但我还是得到了一些错误朋友为什么我们需要为调试而混淆?好问题!!但是,如果您想根据您可以忽略的用例使用,这是一个可用的选项。