在构建项目时获取以下警告
DSL element 'android.dataBinding.enabled' is obsolete and has been replaced with 'android.buildFeatures.dataBinding'.
我正在使用Android Studio金丝雀6
在构建项目时获取以下警告
DSL element 'android.dataBinding.enabled' is obsolete and has been replaced with 'android.buildFeatures.dataBinding'.
我正在使用Android Studio金丝雀6
当前回答
从Android Gradle Plugin 4.0.0-alpha05开始,有一个名为buildFeatures的新块来启用构建功能。
因此,为了使数据绑定与新的AGP插件,你必须在模块(例如:app)级别的gradle文件
构建。gradle (Groovy DSL)
// shorter version
// android.buildFeatures.dataBinding true
// longer version
android {
buildFeatures {
dataBinding true
// for view binding:
// viewBinding true
}
}
build.gradle.kts ( Kotlin DSL )
// shorter version
// android.buildFeatures.dataBinding = true
// longer version
android {
buildFeatures {
dataBinding = true
// for view binding:
// viewBinding = true
}
}
参考:https://developer.android.com/studio/releases/gradle-plugin # buildFeatures
其他回答
以下工作:
android { compileSdkVersion 30 buildToolsVersion“30.0.3”
defaultConfig {
applicationId "com.poet.navviewmodeljave"
minSdkVersion 19
targetSdkVersion 30
versionCode 1
versionName "1.0"
//dataBinding.enabled true
buildFeatures.dataBinding
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
把它放到构建中。gradle(应用程序级别)。它将适用于大于或等于4.0.0的android studio版本。
android {
buildFeatures{
dataBinding true // for data binding
viewBinding true // for view binding
}
}
你必须在gradle模块中添加buildFeatures
android {
buildFeatures{
dataBinding true
}
}
例子:
plugins {
id 'com.android.application'
}
android {
compileSdkVersion 30
defaultConfig {
applicationId "com.demo"
minSdkVersion 21
targetSdkVersion 30
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
buildFeatures{
dataBinding true
}
}
dependencies {
implementation 'androidx.appcompat:appcompat:1.3.0'
implementation 'com.google.android.material:material:1.3.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation 'org.jetbrains:annotations:15.0'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
}
从Android Gradle Plugin 4.0.0-alpha05开始,有一个名为buildFeatures的新块来启用构建功能。
因此,为了使数据绑定与新的AGP插件,你必须在模块(例如:app)级别的gradle文件
构建。gradle (Groovy DSL)
// shorter version
// android.buildFeatures.dataBinding true
// longer version
android {
buildFeatures {
dataBinding true
// for view binding:
// viewBinding true
}
}
build.gradle.kts ( Kotlin DSL )
// shorter version
// android.buildFeatures.dataBinding = true
// longer version
android {
buildFeatures {
dataBinding = true
// for view binding:
// viewBinding = true
}
}
参考:https://developer.android.com/studio/releases/gradle-plugin # buildFeatures
1-在build下面添加dataBinding功能:
android {
...
buildFeatures {
dataBinding true
}
...
}
2-将匕首版本改为2.31.2
annotationProcessor "com.google.dagger:dagger-compiler:$daggerVersion"
implementation "com.google.dagger:dagger:$daggerVersion"
3- butterKnife版本也更改为10.2.3
implementation 'com.jakewharton:butterknife:10.2.3'
annotationProcessor 'com.jakewharton:butterknife-compiler:10.2.3'