写点什么

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:332919
用户头像

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

关注

评论

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

Nginx的HTTP模块与Stream模块:区别与应用场景

天翼云开发者社区

nginx Web 服务器

为什么使用http代理要谨慎?动态ip地址和静态ip地址是什么意思?

巨量HTTP

http代理

为什么你的自动化测试无法落地

老张

自动化测试

AI革命:如何改变我们的工作和生活

测吧(北京)科技有限公司

测试

人工智能塑造未来城市生活

测吧(北京)科技有限公司

测试

华为云API对话机器人CBS的魅力—要是有AI,我要做“李白”- 5分钟开发作诗机器人

华为云PaaS服务小智

云计算 软件开发 华为云

OpenAtom openEuler亮相2023欧洲开源峰会

开放原子开源基金会

聚势共创 多元共生——中科美菱联动清华大学助力产研融合!

联营汇聚

关于 TDengine 3.0 数据订阅,你需要知道这些

TDengine

tdengine 时序数据库 国产时序数据库

自动驾驶汽车:AI技术的未来之路

测吧(北京)科技有限公司

测试

自动驾驶汽车—AI技术的未来之路

测吧(北京)科技有限公司

测试

百度智能云 AI 加速器第二期今日开营,42家AI原生应用企业入选

Geek_2d6073

预训练深度双向Transformer语言模型

百度开发者中心

自然语言处理 #人工智能 千帆大模型平台

深度理解自然语言处理的强大工具

百度开发者中心

自然语言处理 #人工智能 生成式AI

DevOps|研发效能团队组织架构和能力建设

laofo

DevOps cicd 研发效能 持续交付 组织架构

写SAE评测,获 Airpods 2大奖【集结令】!

Serverless Devs

Serverless 云原生 AIGC

IPQ9574 IPQ9554 QCN9274 QCN6274 WIFI7 SolutionUnlocking the Potential of Wi-Fi 7

wallyslilly

ipq9554 qcn9274 qcn6274 ipq9574

自然语言处理的强大工具

百度开发者中心

自然语言处理 #人工智能 千帆大模型平台

人工智能伦理—面对技术的道德挑战

测吧(北京)科技有限公司

测试

体验亚马逊的 CodeWhisperer 感觉

亚马逊云科技 (Amazon Web Services)

Java 人工智能

Illustrator 2023 mac(ai2023矢量图形编辑软件) v27.9中文激活版

mac

windows 苹果mac 矢量图形编辑软件 Illustrator 2023

HarmonyOS 4.0 实况窗上线!支付宝实现医疗场景智能提醒

HarmonyOS SDK

huawei HarmonyOS

日本站群服务器:提升网站流量的最佳选择

一只扑棱蛾子

站群服务器

AI在医疗保健中的潜力与挑战

测吧(北京)科技有限公司

测试

Git Stash:临时保存和切换工作状态的利器

凌览

git git stash

如何在低代码平台中应用可视化编程

力软低代码开发平台

全部自动化可行吗?

FunTester

机器学习:解码人工智能的核心技术

测吧(北京)科技有限公司

测试

软件测试/测试开发丨利用ChatGpt编写测试方案

测试人

人工智能 程序员 软件测试 测试方案 ChatGPT

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