Android-Jetpack重磅升级!新的类库以及现有类库重大更新!

本文概述了AndroidJetpack库近期的重要更新,包括新添加的动画类库、支持设备适配的WindowManager、流畅的MotionLayout动画、改进的Navigation和WorkManager、性能分析工具、简化权限管理和游戏开发支持等。同时,还介绍了面试技巧和资源推荐。
摘要由CSDN通过智能技术生成

为了更简单的实现和测试动画,我们添加了两个新类库: androidx.core:core-animationandroidx.core:core-animation-testing .

我们还在 androidx.vectordrawable 库中引入了新的 API SeekableAnimatedVectorDrawable

core-animation 移植了 Animator 自 Ice Cream Sandwich 依赖的所有特性,例如 暂停/恢复,拖动。

SeekableAnimatedVectorDrawable 是一个基于 core-animation 的全新的,可拖动的,AnimatedVectorDrawable(AVD) 的替代方案。它和 AVD 使用同样的格式,并添加了 拖动,暂停,恢复的功能。

使用 Database Inspector 调试数据库

image

这块我就不翻译了,我两个月前的文章就介绍过了,可以查看一下 数据库还能这么看 ?

官方博客也有相关介绍: Database Inspector

WindowManger - 更好的设备支持

WindowManager 是 Jetpack 新增加的类库,旨在帮助开发者适配各种不同的设备,例如折叠屏。 它为新旧平台版本的 WindowManger 特性提供了统一的 API 支持。

支持不同类型的可折叠设备的初始版本已经投入市场,所以开发者可以进行适配了。更多信息可以查看这篇博客 Support New Form Factors with the new Jetpack WindowManager Library, 示例代码: github.com/android/use…

译者注:掘金上也有一篇相关文章,可以参考:Jetpack WindowManager,Android 折叠屏官方适配方案!

MotionLayout,构建流畅的交互式动画

MotionLayout 继承了 ConstraintLayout 的丰富特性,帮助 Android 开发者管理复杂的运动和窗口组件动画。 通过 MotionLayout ,你可以在 ConstraintSets 之间构造过渡动画,并且可以轻易的集成通用 View 的动画,像 RecyclerViewViewPager 。Android Studio 4.0 支持了 Motion Editor, 用于创建和预览 MotionLayout 动画的图形工具。

image

升级现有类库

Navigation

Navigation 2.3 增加了对 dynamic feature modules(动态功能模块) 的支持,允许用户仅下载应用中需要的模块,大大降低了首次下载的 Apk 大小。现在,你可以导航到这些模块,就好像本身就是 base apk 的一部分一样。除了允许查询参数之外,Deep link 现在还支持自定义 action 和 mime type 。

返回结果 有了新的 API,Navigation 使用 SavedStateHandle 在目标之间传递数据。你可以使用先前的 BackStackEntry 并在上面设置返回值。

新的 TestNavHostController 帮助你在测试中访问回退栈并设置当前 destination 。

WorkManager

最新版本的 WorkManager 通过前台服务增加了对需要保持存活的耗时和重要任务的支持。

为了更轻松地诊断 WorkManager 任务中的问题,我们新增了 Diagnostics API 借助 adb 你查看内部工作状态并输出到 logcat 。

adb shell am broadcast
-a “android.work.diagnostics.REQUEST_DIAGNOSTICS”
-p “<your_app_package_name>”

为了帮助你避免 WorkManager 使用过程中的常见错误,我们已经添加了一些 Lint 规则来标记他们。其他的一些 API 更新包括:支持设置和观察 工作进度 ;优化对当前工作的查询 API;改进正在运行的 scheduler 。

Benchmark

Benchmark 库的最新 alpha 版本与 CPU profiling 整合在了一起,这样就可以对基准测试进行分析,然后直接在 Android Studio 中查看方法或采样的 trace 。我们还增加了对内存分配跟踪的支持,这样你就可以优化分配所花的时间并减少了很多垃圾回收。

Permissions

我们引入了新的 ActivityResult API ,使得权限请求更加简单。新的 API 使用 RequestPermission Contract 代替原来的 requestPermissions 方法,大大简化了权限申请流程。同时对一般的 intent 提供了类型安全的协议,例如 拍照打开文档

Game SDK

今年早些时候推出的 Android Game SDK 现在也是 Jetpack 的一部分,在 Google Maven 仓库已可使用。

它包含两个重要的模块,Frame pacing API 是游戏能够保持稳定的帧率,并可以降低输入的延迟。Performance Tuner 使你能够大规模的测量和优化帧率。

更多相关信息可以查看 官方文档

CameraX

安卓设备上的相机有很大差异,CameraX 兼容了 90% 的设备。自从去年 2月份 CameraX 进入 Beta 以来,我们专注于可靠性以确保 API 在大量设备上具有良好表现。CameraX 测试实验室在超过 4 亿活跃设备上运行了我们的自动测试套件。

最新版本的 CameraX 带来了 PreviewView 组件的优化。现在它可以可靠的处理与应用生命周期的交互以及页面的交互。它还透明的优化了你的设备,在设备底层使用 SurfaceView ,有益于提升性能表现,减少缓冲和提供电源效率。

更多内容请查看 官方文档代码示例

Security

Jetpack Security 类库提供了安全易用的基于文件的加密接口,例如 EncryptedFileEncryptedSharedPreferences

Jetpack Security 利用 Android KeyStore 的优势,提供硬件支持的存储和操作安全性。Release Candidate 2 版本现在支持 Marshmallow+ 版本,1.1.0 alpha 版本支持 Lollipop+ 以上版本。

AppCompat

AppCompat 移植了大量 UI 元素和平台特性,如 Material 主题, Toolbar,Dark Theme 。在最新版本中,我们添加了一些 Lint 规则,让你更好的区分属性是来自 Appcompat 还是原本的 framework ,确保你使用正确的一个。我们还对 AppCompat 深色主题进行了实质性的稳定性改进。

Webkit

Jetpack WebKit1.2 release 版本新增了一个 API,强制支持暗黑模式。当这个 API 启动时,如果网站支持深色主题,WebView 会进行渲染。如果不支持,API 将会强制修改相应的颜色。

Jetpack Compose - 全新的 UI 工具包

最新的现代化 UI 工具包 Jetpack Compose 现在已经到达 Developer Preview 2 版本。这个版本添加了许多新特性:与 View 的互交互性,更多的 Material UI 组件,支持深色主题,新的 UI 测试和动画 API ,ConstraintLayout 基本支持,优化状态管理,集成可观察流,RTL 支持。Android Studio 的预览现在可以交互,并且还有大量的编译优化。

更多信息可以观看视频 What’s new in Compose?

最后

前面快速介绍了 Jetpack 在之前几个月的更新。拥有 90+ 可用类库,我们也知道你很难找到你需要的,所以我们重新设计了 Jetpack 网站 ,并添加了一个方便的 API 选择器, 以快速帮您找到可以解决问题的 Jetpack 库。

更多 Jetpack 的信息,请关注 Jetpack 周(7 月 20 日这一周)即将放出的视频,博客和 codelab 。

译者: 秉心说
地址:https://juejin.im/post/5ee1d438518825434566cf4f

最后

跳槽季整理面试题已经成了我多年的习惯!在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。

附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)


《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!
YxD9O-1714698310920)]
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

  • 22
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值