写点什么

Android Jetpack 带来 WorkManager、Navigation 等特性

  • 2018-05-30
  • 本文字数:1156 字

    阅读完需:约 4 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Android Jetpack 为 Android 应用程序带来了新的组件、工具和架构指南。新组件包括 WorkManager、Navigation、Paging、Slices 和 Android KTX。

Android Jetpack 组件将现有的支持库和架构组件汇集在一起​​,并将它们分为四类:

Android Jetpack 的组件作为“非捆绑”库提供,不属于底层 Android 平台的一部分。这意味着开发人员可以自由使用每个组件。此外,非捆绑的 Android Jetpack 库已全部移到新的 androidx.* 命名空间中(本文进行了详细描述)。

此外,应用程序可以在各种版本的Android 平台上运行,因为Android Jetpack 组件功能独立于底层Android 版本,从而提供向后兼容性。

WorkManager 是一个新的库,它为基于约束的后台作业提供解决方案,可用以替代作业或 SyncAdapter 之类的东西。WorkManager 提供了简洁的现代 API,旨在简化异步任务的指定,不管是在有 Google Play 服务还是没有 Google Play 服务的设备上均可运行。

Navigation 简化了导航的实现,旨在让单 Activity 应用成为首选的架构。通过内置的 fragment 支持,可充分利用架构组件(如 Lifecycle 和 ViewModel)的所有优势,而 Navigation 会为开发者处理 FragmentTransactions 的复杂性。开发者可以使用 Android Studio 3.2 提供的导航编辑器直观地查看和管理导航属性。

通过 Paging 1.0.0 可以很容易地在 RecyclerView 中以快速且无限滚动的方式加载和呈现大型数据集。它可以从本地存储、网络加载分页数据,并可以自定义如何加载内容。它可以与 Room、LiveData 和 RxJava 一起使用。

Slices 是一种 UI 模板,可以从 Google Search 和其他位置(如 Google Assistant)显示来自应用程序的交互式动态内容。

Android KTX 是一套 Kotlin 扩展,它为 Kotlin 优化了 Jetpack 和 Android 平台 API。Android KTX 旨在使 Kotlin 的开发更加简洁、舒适和顺畅。它可以将 Kotlin 代码:

复制代码
view.viewTreeObserver.addOnPreDrawListener(
object : ViewTreeObserver.OnPreDrawListener {
override fun onPreDraw(): Boolean {
viewTreeObserver.removeOnPreDrawListener(this)
actionToBeTriggered()
return true
}
});

转换成更简洁的 Kotlin 代码,如下所示:

复制代码
view.doOnPreDraw { actionToBeTriggered() }

你可以在 developer.android.com/jetpack 上查看如何开始使用 Android Jetpack。YouTube 上有一个 Android Jetpack 播放列表,可以在其中查找有关 Android Jetpack、组件、工具和最佳实践的信息。

Android Jetpack 入门指南将告诉你如何将 Android Jetpack 引入到现有项目或开始新项目。Android Studio 3.2 支持 Android Jetpack,你也可以为 Jetpack 提供反馈

查看英文原文 Android Jetpack Brings WorkManager, Navigation and More

2018-05-30 13:333327
用户头像

发布了 731 篇内容, 共 479.1 次阅读, 收获喜欢 2008 次。

关注

评论

发布
暂无评论
发现更多内容

移动门户平台有哪些?安全专属的移动应用管理平台WorkPlus为企业保驾护航

BeeWorks

im即时通讯哪家好?WorkPlus im即时通讯集成底座为企业保驾护航

BeeWorks

百度智能云:千帆大模型平台升级十大能力,企业级RAG全面升级

IT新闻资讯

Golang channel底层是如何实现的?(深度好文)

徐逸

golang

im即时通讯软件有哪些?WorkPlus安全专属移动数字化平台

BeeWorks

职场<火焰杯>测试开发大赛决赛即将开始!

霍格沃兹测试开发学社

内网通讯软件有哪些?

BeeWorks

合合信息大模型“加速器”亮相2024世界人工智能大会,助力大模型学好“专业课”

合合技术团队

人工智能 合合信息 文档解析

适用于 Rust 新手的编程练习项目

Leon Ding

新手指南 ​Rust rust语言 新手

深度报告 | 百度安全携手极越安全发布《整车安全渗透测试白皮书》

百度安全

护航端侧大模型平稳健康发展,百度大模型内容安全Lite版正式发布

百度安全

从传统到智能,“小浣熊家族AI办公助手”引领数据处理的革命

完美句号

办公 办公平台 AI Agent 效率办公 小浣熊家族

科研菜鸡的好助手——代码小浣熊+办公小浣熊

卟噜卟噜叭

2024年加密货币市场展望:L1、L2、LSD、Web3 和 GameFi 板块的全面分析与预测

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

538个代码示例!麻省理工教授的Python程序设计+人工智能案例实践

我再BUG界嘎嘎乱杀

Python 人工智能 编程 程序设计 开发语言

氛围共处(Ambient Co-presence)丨RTE 共读计划

声网

Android Jetpack带来WorkManager、Navigation等特性_移动_Diogo Carleto_InfoQ精选文章