-1

我需要创建一个也包含使用数据绑定的布局的android库。
我已经成功地得到了库和应用程序包含的作品,但是当我尝试启用模糊处理(minifyEnabled true)我得到:创建使用数据绑定和proguard的库项目

为{变量名}

无法解析类型

这是合理的,因为我的变量类型在proguard处理过程中发生了变化。
我试图通过在public.xml上声明它们中的一部分来公开我的资源,但这没有帮助。

无论如何都可以做到吗?

回答

1

但只要我尝试启用混淆

必须通过调整配置文件(通常为proguard-rules.pro,排除您的模型类的成员从ProGuard的被模糊处理,如果不是,请检查您的build.gradle文件参考)在您的项目/模块中。

编辑

,但我想保持我的数据模型隐藏起来,用我的库中的一个将无法使用它们

那么你一定不能使用数据绑定,因为它需要从模型对象获取数据,因此它必须是公开的。

+0

谢谢,但我试图保持我的数据模型隐藏,所以使用我的图书馆的人将无法使用它们,所以我的首选方式是使我的布局私人。 – Raven

+0

查看编辑答案 –

+0

如果可能的话,我正在寻找的解决方案是使布局只能从我的库中访问。通过这种方式,我的图书馆知道数据模块,而其他人则不知道。 问题是资源按原样捆绑在AAR上,并且可以从所有包含项目进行访问。这就是为什么我提到_public.xml_的方式,使您的资源保密。 – Raven

相关问题