希望有人可以解释为什么在将特定模块声明为runtimeonly
与将其声明为implementation
时每个模块的数据绑定似乎不起作用(返回null)
例如
说我有一些要包括或排除的功能模块(类似于动态功能模块),但是由于其他原因,我现在不使用它,这只是一个实验。因此,我们的想法是将多个组件从主应用程序中分离出来,这些组件仅在运行时才可用,换句话说,应用程序与任何附加功能之间几乎没有耦合,并且在我将数据绑定添加到混合中之前,这种方法可以正常工作,以*Binding cannot be null
崩溃。
我可以使用此设置的唯一方法是从runtimeonly
切换到implementation
,并根据到目前为止的知识,runtimeonly
和{{1}之间的区别}位于gradle website上:
所以我的问题是为什么会发生这种情况,在模块中启用数据绑定是否要求将模块配置为impelentation
?也许我做错了所有事情,并且误解了implementation
的目的。
预先感谢您,如果问题不够全面,我们深表歉意