Dropbox 借助 Jetpack Compose,提速 40% 重建搜索体验
作者 / Android 团队
Dropbox 覆盖 180 个国家/地区,在 Google Play 上的下载量超过 10 亿次,是全球热门的文件共享和云存储服务。Dropbox 致力于设计一种更具启发性的工作方式,让生活井井有条,工作顺利。正因为这样,Dropbox 近期采用了 Android 的现代声明式界面工具包 Jetpack Compose 来打造原生界面。
Dropbox
https://play.google.com/store/apps/details?id=com.dropbox.androidJetpack Compose
https://developer.android.google.cn/jetpack/compose
更智能、更快速的界面构建方式
自从采用 Compose 以来,Dropbox 开发人员为该应用重写了许多功能,包括其主屏幕、文件预览功能和搜索体验。Dropbox 的搜索体验在短短几周内就得以完全重建,比预期用时缩短了 40%,不到他们针对 iOS 构建相同功能所用时间的一半。
该团队之所以能够提升工作效率,得益于 Compose 的使用十分轻松简单。自从重建搜索体验以来,Dropbox 开发人员发现搜索会话的成功率增加了 13%,这是团队关注的一个关键指标。
Compose 助力 Dropbox 开发人员加快节奏,利用该工具包的基本构建块和实用工具轻松构建复杂的自定义界面。Dropbox 的资深 Android 工程师 Ryan Harter 表示,"该工具包支持采用不同配置或包含不同数据的多个预览,让我们在构建组件时可以考虑各种变体,无需等到事后再进行测试"。
Dropbox 团队还基于 Android 的 MaterialTheme 构建了一个新的设计系统,这是工程师们遵循 Compose 最佳实践实现的成果。这一举措最大限度缩短了 Dropbox 开发人员完成应用基础构建工作的时间,让他们可以利用 Compose 构建新功能,同时兼顾与 Dropbox 品牌一致的外观和风格。
MaterialTheme
https://developer.android.google.cn/reference/kotlin/androidx/compose/material/MaterialTheme
Compose 最佳实践
https://developer.android.google.cn/jetpack/compose/designsystems/custom
与 View 的兼容性
使 Compose 更易上手
Compose 与 View 的互操作性也让 Dropbox 开发人员更加愿意使用 Compose,利用这两个工具包进行协同开发的便利性让他们眼前一亮。Dropbox 团队能够在应用中支持经典的 View 库和插件,同时可使用 Compose 创建新的界面组件。因此,Dropbox 开发人员可以逐步将 Dropbox 应用迁移到 Compose,而不是彻底重构应用。
"与 Compose 的互操作性使我们能够进一步采用该工具包,即便我们有时需要在某些工作流程中与 View 进行交互,例如 ExoPlayer 视图和 PDF 文档视图",Ryan 补充道,"开发者可以从较小的组件开始,体验其优势和更快的速度,而不需要重新编写整个应用。很明显,Compose 的设计着眼于让用户无需进行全盘迁移"。
改进的测试和实验功能
单向数据流
https://developer.android.google.cn/jetpack/compose/architecture
借力 Jetpack Compose 持续改进
开始使用
Jetpack Compose
https://developer.android.google.cn/jetpack/compose
推荐阅读