【问题标题】:Android viewbinding deprecation warning persists in Android Studio 4 after making appropriate update进行适当更新后,Android 视图绑定弃用警告在 Android Studio 4 中仍然存在
【发布时间】:2020-06-01 12:23:31
【问题描述】:

更新到 Androis Studio 4.0 后,我收到一条警告,指出 android.viewBinding.enabled 已被弃用,应该替换为 android.buildFeatures.viewBinding

因此,我将build.gradle (app) 的相应部分从:

android {
    ...
    viewBinding {
        enable = true
    }
    ...
}

到:

android {
    ...
    buildFeatures {
        viewBinding {
            enabled true
        }
    }
    ...
}

我不再收到警告,但仍然在我的构建窗口中看到一个信息框,如下所示:

build.gradle: DSL element 'android.viewBinding.enabled' is obsolete and has been replaced with 'android.buildFeatures.viewBinding'. It will be removed in version 5.0 of the Android Gradle plugin.

这正常吗?我知道这不是警告或错误,但告诉我一些已修复的问题似乎很奇怪 - 或者我没有正确修复它(我的应用仍然按预期使用 viewBinding)。

(另请注意,将buildFeatures 部分添加到文件时,自动完成提示中不会弹出任何必需的整体,包括buildFeatures。)

【问题讨论】:

  • 清除缓存并使其无效?
  • 已经试过了。此外,当添加 buildFeatures 部分时,自动完成不会出现任何内容 - 几乎就像这种更改尚未完全实施......(我应该将其添加到问题中......)

标签: android android-studio android-gradle-plugin build.gradle


【解决方案1】:

解决了!

虽然它工作正常 - 即视图绑定工作正常 - 正确的新语法似乎是:

android
    ...
    buildFeatures {
        viewBinding true
    }
    ...
}

...不过,自动完成中仍然没有弹出。


更新:经过几次构建和重建后,我再次检查,现在 buildFeatures 正在自动完成中弹出......我想我没有足够的耐心让一切都赶上。有点奇怪的是,使缓存无效并没有立即修复自动完成。

【讨论】:

    【解决方案2】:

    @胖僧

    请将此行添加到您的应用程序 build.gradle 文件中。

    android.buildFeatures.viewBinding = true
    

    【讨论】:

    • 谢谢,该语法似乎也有效,但我更愿意坚持我的 build.gradle 其余部分的括号格式。
    • @FatMonk 请更新您的 gradle-wrapper.properties 文件中的以下行。 distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip
    【解决方案3】:

    我也有这个警告。

    为了解决这个问题,我只需要从我的构建 gradle(模块应用程序)中删除这条旧行:

    viewBinding.enabled = true
    

    我将其替换为:

    android.buildFeatures.viewBinding = true
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-23
      • 2019-12-30
      • 1970-01-01
      相关资源
      最近更新 更多