关于kotlin:Kotlin-Android-Extensions-的未来计划

8次阅读

共计 976 个字符,预计需要花费 3 分钟才能阅读完成。

作者 / 产品经理 David Winer

Android Kotlin Extensions Gradle 插件 (请勿与 Android KTX 混同) 公布于 2017 年,为应用 Kotlin 进行 Android 开发带来了两项新的便当性能:

  • Synthetic 视图 : 您能够将调用 findViewById 替换为应用 kotlinx.android.synthetic 进行 UI 交互。
  • @Parcelize 注解 : 帮忙您移除样板代码并通过 @Parcelize 注解轻松创立 Parcelable。

咱们随后公布了 实用于 Android 的视图绑定 组件,它是一个与 Android 构建工具链深度集成并提供与 Kotlin synthetic 相似性能的官网反对库。咱们尽管仍举荐应用 Parcelize,但 Kotlin synthetic 却存在一些弊病:

  • 净化全局命名空间
  • 不能裸露可空性信息
  • 仅反对 Kotlin 代码

Android Kotlin Extensions 插件最后由 JetBrains 开发,咱们也独特探讨了持续保留 synthetic 的利弊: 咱们尽力确保在可行范畴内对 API 的长期反对,但咱们也心愿为开发者提供领导,帮忙开发者保护衰弱的代码库并最终博得用户的称心。

在接下来的一年里,咱们的团队将独特弃用 synthetics,并持续反对咱们倡议的选项——” 视图绑定 (View Binding)”。这意味着:

  • 如果您正在应用 Parcelize,则能够持续应用雷同的注解和 API。然而,注解包将更改为 kotlinx.parcelize,并且在模块级 Gradle 文件中,您须要开始应用独立的 kotlin-parcelize 插件而非 android-kotlin-extensions。您能够在 Android 开发者官方网站 上找到无关 Parcelize 的文档。
  • 如果您应用 Android Kotlin synthetics,倡议尽快迁徙到 “ 视图绑定 (View Binding)”。请参阅咱们的 迁徙指南 以理解更多详细信息。

弃用期随着 Kotlin 1.4.20 的公布正式开始。android-kotlin-extensions 将持续保留至多一年工夫,但在 2021 年 9 月或之后的 Kotlin 版本中将被移除。长期来看,咱们将持续保留 kotlin-parcelize 插件,您也能够持续在 Android Studio 问题追踪器 中提交无关 Parcelize 的问题。

正文完
 0