使用数据绑定创建和使用AAR

时间:2016-03-31 17:23:38

标签: android android-studio data-binding aar android-databinding

目前我正在创建一些使用数据绑定的android模块,库模块在项目本身内工作正常(作为项目依赖项)。我遇到的问题是在另一个项目中使用那些AAR时(作为平面文件依赖项),它找不到一些符号(找不到符号变量R.id.some_id 有点问题)

这是我尝试使用的库模块build.gradle

apply plugin: 'com.android.library'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"
    dataBinding {
        enabled true
    }
    defaultConfig {
        minSdkVersion 16
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile 'com.android.support:appcompat-v7:23.2.1'
    compile 'com.android.support:design:23.2.1'
}

然后我通过执行AAR创建gradle clean assembleRelease,并将其放在libs文件夹中,然后我就这样使用它:

//...
repositories {
    flatDir {
        dirs 'libs'
    }
}

dependencies {
    compile (name:'librarymodule-release', ext:'aar')
}

我是否省略了什么?或者是否无法在AAR s中使用数据绑定?

1 个答案:

答案 0 :(得分:1)

我已经弄明白了,在我在库项目中的布局文件中,另一个具有相同名称的文件(它被称为<MyUserControl DataContext = "{Binding MyUserControlViewModel}" SearchText = "{Binding Comment}"/> ,并且我的另一个public string Comment { get { return _comment; } set { _comment = value; } } public MyUserControlViewModel MyUserControlViewModel { get { return _myUserControlViewModel ; } set { _myUserControlViewModel = value; } } 发生冲突主持人项目)。

无论如何,感谢您的阅读。