前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Now in Android 16 —— 最新 Android 动态分享

Now in Android 16 —— 最新 Android 动态分享

作者头像
路遥TM
发布2021-08-31 15:24:20
1.3K0
发布2021-08-31 15:24:20
举报
文章被收录于专栏:路遥的专栏

大家好,我是秉心说。

新一期的 Now in Android 又更新了,原文地址如下:

https://medium.com/androiddevelopers/now-in-android-16-9a282ebd3f42

AndroidX Release

和往常一样,最近更新了很多 AndroidX 类库,其中包含两个 stable 版本:

  • Navigation 2.2.2
  • Preference 1.1.1

包含一些 bug fix,并没有什么新特性。

除此之外,还有很多的 RC 、beta 、alpha 版本更新。作者挑了两个动画相关的 alpha 版本更新着重说明, Core-Animation 1.0.0-alpha01 和 Vectordrawable-Seekable 1.0.0-alpha01。

Core-Animation 1.0.0-alpha01 应该是把之前的动画 API 搬到 androidx 上了,并添加了一些新特性,就包括 AnimatedVectorDrawable,它具备 seekable 特性,可以暂停和恢复,自动设置动画位置。

更多详细信息,可以查看官网相关文档。

文章和视频

Database Inspector

关于 Database Inspector, 我前几天专门写了一篇文章做了详细介绍,数据库还可以这么看 ?

这里再简单说一下,通过 Database Inspector ,你可以在 Android Studio 中快速查看和修改你的数据库表数据,除此之外,你也可以执行 Sql 语句。如果你使用的是 Room 数据库,你还可以直接执行你的 Dao 文件中的 Sql 语句。

另外说一点,我的文章是基于 Android Studio Canary 5 写的。在最新的 Android Studio Canary 6 中,已经支持了 Live Update 功能,即你再修改表数据之后,UI 页面会自动刷新,而之前你必须得手动刷新才能看到修改。

更多详细内容,可以阅读我的文章,也可以阅读 Google 团队的文章,地址如下:

https://medium.com/androiddevelopers/database-inspector-9e91aa265316

操作符重载

这是 Kotlin Vocabulary 系列的新文章,介绍了 操作符重载 ,原文地址如下:

https://medium.com/androiddevelopers/code-expressivity-with-operator-overloading-ada22a0ca633

正常情况下,+ - * / 等符号只能应用于特定类型,通过 Kotlin 的操作符重载,你可以对任意对象使用这些符号。举个文中最简单的例子,

代码语言:javascript
复制
operator fun ViewGroup.plusAssign(other: View) = addView(other)

然后你就可以这样使用了。

代码语言:javascript
复制
viewGroup += view

原理其实也很简单,编译器的黑魔法而已。你查看字节码就可以看到,符号又被替换回了 plusAssign() 方法。

目前 Kotlin 支持的重载操作符有这些。

Kotlin 在一些方面留给了开发者很大的自由发挥空间,像操作符重载,扩展函数等。你可以充分发挥自己的想象力去创造代码,这也是我很喜欢 Kotlin 的一个重要原因。

Material Design Components

Nick Rout 的一篇新文章 Migrating to Material Components for Android ,地址如下:

https://medium.com/androiddevelopers/migrating-to-material-components-for-android-ec6757795351

这个其实就是 com.google.android.material:material:1.0.0 ,用以代替以前的 Design Support 库。最近由 1.0.0 升级到了 1.1.0 ,有许多的细节更新,包括 Dark Theme ,完整的 Material 主题支持(包括颜色,样式),新的组件(FAB,data picker) 。

作者建议如果你是从 Design Support 库升级上来的,先升级到 1.0.0 版本,没有问题的话再升到 1.1.0 版本。

文中有许多的更新细节,这篇文章我还没有细看,后续会将我的开源 Wanandroid 项目也更新到 1.1.0 版本。

另外,还有视频版本,地址如下:

https://www.youtube.com/watch?v=64OD1PAqELg&feature=emb_logo

One Tap

这个类似国内的各种 一键免密登录,由 Google Identity Services 提供。当然也就意味着,跟我们大多数人没太大关系。如果你是出海应用,可以关注一下。

https://medium.com/androiddevelopers/one-tap-sign-in-for-android-apps-2259ce15bc2c

LiveData

受疫情影响,Jose Alcérreca 继续他的 录屏系列

两个一分半的视频。第一个视频介绍了协程和 LiveData 的基本使用。

https://www.youtube.com/watch?list=PLNUr_cTShrWZNKJlnurh5MB1wkSEU2nlw&time_continue=1&v=KUn0-D6DpuY&feature=emb_logo

第二个视频介绍了 switchMap 的基本使用。

https://www.youtube.com/watch?v=KUn0-D6DpuY&list=PLNUr_cTShrWZNKJlnurh5MB1wkSEU2nlw&index=6

Sample Code

定位,定位,定位

(重要的事情说三遍。)

关于 Android 11 中定位功能的相关变化,在前面几期的 Now in Android 中已经做过介绍。如果你还不了解的话,可以看看 Google 重写过后的 Android Location Codelab ,地址如下:

https://codelabs.developers.google.com/codelabs/while-in-use-location/index.html?index=..%2F..index#0

这个 codelab 提供了前台请求定位的最佳实践。所谓前台是指应用可见,或者应用正在运行一个有通知的前台服务。

那么后台请求定位呢?首先,是不建议后台请求定位的,除非你有合理的用户场景。如果真的有用户场景的话,官网也有相关介绍:

https://developer.android.com/training/location/background

后台请求定位的示例代码:

https://github.com/android/location-samples/tree/master/LocationUpdatesBackgroundKotlin

无障碍

其实我也不知道国内有多少应用会去做无障碍的,包括我自己也没有做过。Google 建议每一款 App 都要考虑到特殊人群无障碍使用。

Shailen Tuli 发布了两个 codelab 来帮助开发者完成无障碍适配。第一个 codelab 介绍了一些通用问题和解决方案,地址如下:

https://codelabs.developers.google.com/codelabs/starting-android-accessibility/#0

第二个 codelab 介绍了如何使用 Espresso 完成无障碍相关的自动化测试。地址如下:

https://codelabs.developers.google.com/codelabs/a11y-testing-espresso/#0

最后

我是秉心说,这一期的 Now in Android 就到这里了,大家下期再见!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 路遥TM 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • AndroidX Release
  • 文章和视频
    • Database Inspector
      • 操作符重载
        • Material Design Components
          • One Tap
            • LiveData
            • Sample Code
              • 定位,定位,定位
                • 无障碍
                • 最后
                相关产品与服务
                号码认证
                号码认证(Number Verification Service)集成了三大运营商特有的网关取号、验证能力,自动通过底层数据网关和短信网关识别本机号码,在不泄漏用户信息的前提下,安全、快速地验证用户身份。提供一键登录、本机校验两大功能,实现一键免密注册、登录、校验,提升用户使用体验。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档