当前位置: 首页 > 科技观察

Kotlin1.8将彻底移除KotlinSynthetics

时间:2023-03-12 07:48:58 科技观察

KotlinAndroidExtensionsGradle插件,该插件最初由JetBrains开发并于2017年发布。该插件为Android开发提供了两个非常好的功能,即Synthetics和Parcelize。其中,Synthetic允许开发者减少findViewById的使用,可以通过kotlinx.android.synthetic绑定实现;而Parcelize允许开发者使用@Parcelize注解实现Parcelable而无需编写模板代码。虽然Synthetic有很好的优点,但Synthetic也有污染全局命名空间、不暴露可空性信息、只支持Kotlin代码等缺点。也正是因为这些缺点,Android团队后来发布了ViewBinding来替代findViewById。视图绑定是一项允许开发人员更轻松地编写与视图交互的代码的功能。在模块中启用视图绑定后,它会为该模块中的每个XML布局文件生成一个绑定类。绑定类的实例包含对在相应布局中具有ID的所有视图的直接引用。为了支持更好的解决方案,2020年11月,Android开发团队宣布弃用AndroidKotlinExtensionsGradle插件,并建议开发者从他们的项目中删除该插件。为了让开发者有更多时间完成迁移,安卓开发团队还延长了支持时间。今天,Android团队为迁移设定了截止日期:该插件将在Kotlin1.8中完全移除,预计将在2022年底发布。届时,开发者将无法更新到最新的Kotlinversion如果你的项目仍然依赖于这个插件。开发人员无需担心插件中包含的另一个功能Parcelize,Parcelize现在可在独立的kotlin-parcelize插件中使用,功能没有变化。本文转自OSCHINA文章标题:Kotlin1.8将彻底移除KotlinSynthetics文章地址:https://www.oschina.net/news/184251/discontinuing-kotlin-synthetics