最近有做插件化相关的东西,发现插件对constraintLayout的app:自定义属性不支持,我没找到真正解决问题的原因,临时思考得出的一个应对方案,但是能解决宿主和插件都引用constraintLayout的时候所引发的问题。
背景
在写demo的时候发现,宿主引用了constraintLayout,插件也引用了constraintLayout,但是插件里面使用constraintLayout的app:这种自定义属性就失效,虽然有打断点跟踪,但是没发现有什么不同之处,最主要的应该是跟Resources有关系,插件化中资源的问题都跟resources有关,而resources跟context有关,所以后边有时间我会再去找解决问题的根本方案。
经过测试,我发现宿主不引用constraintLayout的时候,插件引用,这样在插件当中使用constraintLayout没有一点问题,所以呢,我就决定把constraintLayout的包下载下来,然后修改包名,打成aar文件,让插件使用,这样就不会有冲突了,但是插件使用constraintLayout的时候需要使用我们自己包下的类路径,不要引用错了。
如果有更好的解决方案烦请告知
注意你们自己的版本号,我是用的2.0.1版本的constraintLayout