写点什么

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

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

关注

评论

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

加密数字货币钱包APP系统开发,数字货币钱包系统定制

13530558032

Git技术干货!工作中"Git"的使用实践和常用命令合集!

Geek Tech

git git常用命令 git常用实践 工作中git的使用

疫情对在线教育的影响

anyRTC开发者

在线教育 直播 RTC 安卓

数字货币交易系统应用开发,区块链交易所app

13530558032

架构师训练营第 0 期第 12 周作业

无名氏

一文说透"静态代理"与"动态代理"

Geek Tech

源码分析 动态代理 静态代理

收藏!一篇教会你写90%的shell脚本!

Geek Tech

Shell shell脚本编写 收藏教程

GitHub上120K Stars国内第一的Java多线程PDF到底有什么魅力?

Java 程序员 并发编程 多线程 架构师

GitHub上的今年第一本《Java异步编程实战》美团T9亲荐,太赞了

Java 程序员 架构师 异步编程

Redis问的太深入,面试官说:你先回去等通知吧

Java redis 编程 程序员 架构师

架构师训练营十二周作业

方堃

架构师训练营第十二周作业

叮叮董董

除了方文山,用TA你也能帮周杰伦写歌词了

华为云开发者联盟

AI 数据 周杰伦 modelarts 歌词

Github下载即将破百万的PDF:双十一高并发亿级流量秒杀顶级教程

Java 编程 程序员 秒杀 计算机

架构师培训 -12 hadoop

刘敏

交易所合约跟单系统源码开发,合约跟单平台搭建

13530558032

云计算、人工智能、大数据技术三者之间的关系

cristal

人工智能 云计算 大数据

易观郭炜:流动水系数造未来

易观大数据

云小课 | 一份超实用的勒索病毒自救预防指南

华为云开发者联盟

勒索病毒 弱密码 云小课 企业主机安全 病毒云查杀

区块链USDT支付系统,USDT承兑支付软件开发

13530558032

使用 Next.js , Nexus, Prisma 构建全栈项目

夏木

nextjs prisma graphql fullstack

全网都在跪求的阿里Java修炼开发技术笔记,终于开放下载了

Java 编程 后端 架构师

膜拜!京东T9大牛沉淀三年终于整理出了这份架构核心修炼之道

Java 编程 程序员 架构师 计算机

2. Bean Validation声明式校验方法的参数、返回值

YourBatman

参数校验 Hibernate-Validator Bean Validation 方法校验

架构师培训十二周练习

小蚂蚁

如何实现特定列脱敏?这两种方法你都要会

华为云开发者联盟

postgresql 数据 脱敏 匿名 视图

LeetCode题解:155. 最小栈,使用链表代替栈,JavaScript,详细注释

Lee Chen

大前端 LeetCode

释放数据价值:DAYU数据运营新能力解读

华为云开发者联盟

大数据 数字化转型 华为云 代码原理 数据运营

京东T9今年首发的一份Spring Boot实战,让开发像搭积木一样简单

Java 编程 程序员 架构师 计算机

真香警告!手绘172张图解HTTP协议+703页TCP/IP协议笔记

Java 程序员 架构师 计算机

TCP/IP协议族(第四版)已出,不愧是世界计算机优秀畅销精选书籍

Java 编程 架构师 TCP/IP 协议族

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