minifyEnabled仅对某些软件包或我的文件而言

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了minifyEnabled仅对某些软件包或我的文件而言相关的知识,希望对你有一定的参考价值。

我正在编写一个android项目,并尝试对其进行编译以进行发布。在我的项目中,我正在使用第三方项目,例如,ouchbase-lite。

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

我想在gradle中使用minifyEnabled = true,但是签名的APK无法运行,沙发床使用反射似乎是一个问题,无法找到其中一个属性...

  1. 是否可以将gradle配置为仅对我的项目文件minifyEnabled?
  2. 我可以将其配置为只对某些程序包启用minifyEnabled吗?

谢谢!

答案

您可以使用Proguard配置文件中的-keep规则排除正在使用反射并且可能在运行时引起麻烦的类。

-keep public class com.example.somepackage.*

使用上面的规则,排除所有与public class com.example.somepackage.*相匹配的类,使其被最小化和混淆。

以上是关于minifyEnabled仅对某些软件包或我的文件而言的主要内容,如果未能解决你的问题,请参考以下文章

如何仅对某些模式启用空白模式

CakePHP内部服务器仅对某些用户出错,清除缓存后消失

Anylogic:如何仅对同一资源池的某些工作人员执行停机

Mysql连接问题或我的代码问题[重复]

为啥在我的程序中打开某些 wav 文件时出现此错误“EMCIDeviceError”

minifyEnabled 删除使用过的资产