gpt4 book ai didi

android - 如何在库模块中使用 ProGuard

转载 作者:行者123 更新时间:2023-12-04 23:54:35 27 4
gpt4 key购买 nike

我想在库模块中启用 ProGuard,但出现包不存在的编译错误。为什么在library模块应用ProGuard后包不存在?

库模块build.gradle

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

日志错误

 /home/hitesh/Documents/Android Studio Project/ALPR-Sample/app/src/main/java/com/alpr/sample/GalleryActivity.java
Error:(15, 32) error: package com.alprlib.alpr.doc does not exist
Error:Execution failed for task ':app:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

此处doc类文件存在于库模块中

ProGuard 文件规则

-keep class com.alprlib.alpr.** { *; }
-keepclassmembers class alprlib.alpr.** {*;}

最佳答案

在库项目中为库指定 proguard 设置(例如不应混淆哪些库文件)对我来说很有意义。我发现我还需要在我的应用程序中包含来 self 的库模块的混淆器配置。为此,我将以下内容添加到我的库的 build.gradle

中的 defaultConfig 部分
consumerProguardFiles 'proguard-rules.pro'

然后在我的库模块中配置 proguard-rules.pro 文件来保留重要的序列化类的名称。

另见 consumerProguardFiles

请看这篇文章: https://stackoverflow.com/a/48636288/8770663

关于android - 如何在库模块中使用 ProGuard,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44069851/

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