如何在库中使用android数据绑定

时间:2016-07-18 17:04:35

标签: android android-gradle shared-libraries android-databinding

是否可以在库项目中使用Android DataBinding?我确实创建了一个用于其他人的库。在这个库中,我确实使用了Android DataBinding。它确实在同一个Android Studio项目上作为模块工作,但是当我将它安装到我的本地maven repo时,由于无法找到生成的文件,因此无法进行编译。 当我检查aar文件时,我也找不到生成的数据绑定文件夹。

将产生以下错误:

error: cannot access HeaderToolBarBinding
class file for com.test.library.shared.databinding.HeaderToolBarBinding not found
 Consult the following stack trace for details.
 com.sun.tools.javac.code.Symbol$CompletionFailure: class file for    
 com.test.library.shared.databinding.HeaderToolBarBinding not found
 1 error

有谁能解决这个问题?

所以,

 - Shared project
 ---> App (include library by compile project(":shared")
 ---> Shared library (with DataBinding enabled)

 - Project other people
 ---> App (include library by Gradle dependecies)

2 个答案:

答案 0 :(得分:3)

要使DataBinding在使用您的库的应用程序中工作,两者需要在其build.gradle文件中启用DataBinding:

dataBinding {
    enabled = true
}

答案 1 :(得分:1)

只需更新应用的gradle文件

即可
dataBinding {
 enabled=true
 }