您的位置:云骑士 > 科技 > 新闻 >

Google的Jetpack Compose可让Android开发人员使用少得多的代码来编写应用

时间:2020-08-30 08:07:25

谷歌今天发布了其用户界面工具包Jetpack Compose的Alpha版本,该工具包可帮助开发人员“在所有Android平台上构建漂亮的UI,并具有对平台API的本地访问权限”。虽然有Alpha版本意味着它肯定还不能投入生产,但Jetpack Compose承诺让Android开发人员使用“少得多的代码,交互式工具和直观的Kotlin API来构建应用程序”。Alpha版本还包括新工具,包括动画,约束布局和性能优化。

Google在其I / O 2018开发者大会上推出的Android Jetpack是一组用于加速应用程序开发的组件。将其视为支持库的后继者,支持库是一组组件,可以更轻松地利用新的Android功能,同时保持向后兼容性。Google首次在其I / O 2019开发者大会上展示了Jetpack Compose,它是一个未捆绑的工具包,旨在通过将反应式编程模型与Kotlin结合起来简化UI开发。谷歌曾在6月承诺,Jetpack Compose将于今年夏天以alpha发行,并于明年推出1.0版。

低代码和无代码的软件开发方法非常流行。从初创企业到科技巨头,每个人都在努力使成为开发人员变得更加容易。因此,不足为奇的是,Google希望简化其最大平台的开发。截至2019年5月,Android 每月拥有超过25亿的活动设备。

Google的Jetpack Compose可让Android开发人员使用少得多的代码来编写应用

Jetpack撰写Alpha

谷歌表示,开发人员更喜欢使用声明性API来构建UI。因此,Jetpack Compose结合了“用于大规模高质量应用程序的API,直观的语言和反应式编程模型。” 该团队在构建工具包时就考虑到了互操作性-它与Android视图和Android代码兼容,因此开发人员可以使用它而无需重写其应用程序。

此外,Google编写了Compose API以及一组使用其Material Design的规范示例应用程序。撰写示例应用程序可在GitHub上直接在Android Studio中使用:

与视图的互操作性(开始在现有应用程序中混合可组合功能)

动画制作

懒惰清单

约束布局

材质UI组件

测试中

文字和可编辑文字

主题和图形

窗口管理

输入和手势

最初的A11Y支持

性能优化

Google的Jetpack Compose可让Android开发人员使用少得多的代码来编写应用(1)

说到Android Studio,Google已与Jetbrains Kotlin团队更新了4.2 Canary版本,以帮助使用Compose构建应用程序。改进包括用于代码生成的Kotlin编译器插件,Compose预览注释,实时交互式Compose预览,将单个可组合对象部署到任何设备,Compose代码完成以及用于Compose的示例数据API。

Android Studio中的Jetpack Compose旨在帮助您在应用程序的UI上快速迭代。您可以在构建时预览Compose组件,而不必将应用程序部署到设备或仿真器。要创建布局预览,请编写一个不包含任何参数的可组合函数,并添加@Preview批注。

Android Studio提供了一种交互式预览模式,可让您在UI响应时就像在已安装的应用程序中一样单击或键入UI元素。您还可以将一个可组合的组件部署到默认设备或仿真器,以尝试UI,而无需重新安装整个应用程序或导航至其位置。Android Studio创建一个包含该函数生成的UI的新活动,并将其部署到设备上的应用程序中。

可与现有的Android代码互操作

Android视图层次结构通常表示为UI小部件树。更新UI通常包括使用更改小部件内部状态的函数遍历树。Android Jetpack团队不仅认为这很乏味,而且指出手动更新视图会增加出现错误的可能性。

这就是Jetpack Compose采用完全基于组件的声明式方法的原因。您将UI描述为将数据转换为UI层次结构的函数;当基础数据更改时,Compose框架会自动为您更新UI层次结构,从而加快开发速度并减少错误。

Google的Jetpack Compose可让Android开发人员使用少得多的代码来编写应用(2)

但是采用新框架对现有项目和代码库来说是一个巨大的变化。因此,谷歌将Compose设计成与Kotlin一样易于采用 -它可以与现有的Android代码完全互操作。

如果您要构建一个新应用,Google希望您可以使用Compose来实现整个UI。但是鉴于它仍处于Alpha状态,您可能不应该这样做。对于现有的代码库,Google建议将Compose与现有的UI设计结合使用的两种方法之一:

通过创建全新的基于Compose的屏幕或将Compose元素添加到现有片段或视图布局中,将Compose元素添加到现有UI中。

将基于视图的UI元素添加到可组合函数中。这样可以将非Compose的小部件(例如MapView或WebView)添加到基于Compose的设计中。

要开始使用Jetpack Compose,请查看Compose Tutorial,设置和Compose途径。您可能还需要尝试MDC Compose Theme Adapter,它可以让您在Compose UI中重用Material Components主题。

点击阅读全文

相关下载
相关视频
相关教程
最新教程