android官方文档中文版_Now in Android:01 - 如何掌握最新的 Android 技术?

1ba7ee5f7d2b929cbeea04193f7e3607.png

f66b037df904ae9379d55e399c7c9331.png

每隔几天我都会通过 Android Developers 的油管官方频道,来了解一下最近 Android 发布了哪些有趣的新技术,最近发现官方推出了一个新的系列视频叫做:Now in Android,目前更新了 4 期,我觉得这个系列蛮有趣的,这周会把已上线的 4 期视频结合自己的理解为大家分享一下,如果你不知道什么是 Now in Android,那么别急,一会就告诉你。

在开始今天的推送之前,先做一个小调查:你通常是从哪里获取最新的 Android 技术动态的?

  1. Android Developers 官方 Youtube 频道
  2. developer.android.com 开发者官网
  3. Android Developers 官方 Medium 频道
  4. android-developers.googleblog.com 开发者博客
  5. 国内技术论坛
  6. 微信公众号

可以在评论区告诉我

什么是 Now in Android?

6b73d54df2b4b4eabcc493120b19eded.png

Now in Android 是由 Chet Haase 在 Medium 上发布的一系列关于 Android 相关技术的文章,创办这个系列的目的是为了,帮助广大开发者可以更好的掌握:Android 团队目前在做什么、有哪些最新更新的 Android 支持库、有哪些最新上线的文档以及代码例子等 Android 开发者需要掌握和关注的内容。

正如上方的小调查一样,开发者能获取 Android 最新的动态的地方太多了,所以 Android Team 重新设计了新系列的 Now in Android 。全新的 Now in Android 目前将会整合所有 Android 开发者需要掌握和学习的最新内容,以视频和文章的形式为大家统一介绍,并在文章中会附上相应技术的官方链接地址,帮助大家了解详细内容。

在我看来这真是太棒了!本公众号也会定期的为大家同步更新 Now in Android 的最新内容,记得订阅关注哦!同时想查看原视频和文章的同学,可以点击文章最后的【阅读原文】查看。接下来就正式为大家带来第一期 Now in Android 的内容。

1. 新的 Room 文档

Room 是 Android Jetpack 中推出的基于 SQLite 的数据库组件,帮助大家在 Android 上更好的使用和操作数据库。基于我目前的使用体验来说,Room 还是非常轻便快捷易上手的,同时也非常好用,推荐指数五颗星。

1.1 定义对象之间的关系

dc04c20067b2e2e5b0f9dd7846c3ef45.png

目前 Room 更新了它的文档,帮助大家更好的去定义对象之间的关系。正如上图中所说,Room 虽然是关系型数据库,但它禁止实体对象之间互相引用,所以在新的文档中,Room 提供了以下三种定义对象之间关系的方式:

  1. 定义一对多关系
  2. 创建嵌套对象
  3. 定义多对多关系

更多的内容欢迎查看

https://developer.android.com/training/data-storage/room/relationships

1.2 通过本地文件初始数据库

0e81616e4137c8a8a35d442c37e728ad.png

在 Room 2.2.0 正式版中,支持了通过本地文件初始化数据库,目前支持以下两种初始化方式:

  1. 从 Asset 加载本地数据库文件
  2. 从文件系统中加载本地数据库文件

与此同时文档中还提供了本地数据库初始化时的迁移问题,并提供了事例代码,更多的内容欢迎查看

https://developer.android.com/training/data-storage/room/prepopulate

2. Android KTX extensions 文档

安卓 KTX 为现有类提供了 Kotlin 扩展功能,以简化安卓应用编程接口的使用。把它们看作是在我们向后兼容的世界中改进应用编程接口的一种方式,在这个世界中,我们不能改变核心应用编程接口本身,因为这会破坏应用程序。除了更优雅、更简单的应用编程接口之外,它们还利用了关键的Kotlin特性,如lambdas、命名和默认参数、coroutines和(是)扩展函数,使应用编程接口变得更好,更容易集成到您的Kotlin开发流程中。

但是目前有一个很大的痛点:我怎么知道现在有哪些已支持的扩展方法?

反正对我来说,我之前都是在看 GitHub 上面官方的代码时,才知道原来有这样那样的扩展方法可以这样用,不然根本不知道,而且每一个都是独立的

依赖地址,非常麻烦和繁琐。

5acd6e223a9812bbfcdb13c504900775.png

这次,官方上线了全新的 List of KTX extensions 指南,整理了所有的 Android ktx 文档,文档中标明了哪些类实现了扩展功能,同时提供了依赖地址,从这份文档上,你可以掌握全部的 Android ktx 内容。

更多的内容欢迎查看

https://developer.android.com/kotlin/ktx/extensions-list​developer.android.com

3. 新的 AndroidX 支持库

在去年 12 月中旬发布了一些全新的 AndroidX 支持库,现有以下 5 个支持库提供了新的 Release 版本提供使用:

  1. Biometric 1.0.1:Biometric 是一个生物识别支持库,为开发者提供了 API 来实现验证功能,例如指纹识别等。1.0.1 版本没有对 API 进行修改,只是做了一些 bug 修复。
  2. Browser 1.2.0: Browser 是 Android Jetpack 中操作浏览器的支持库,1.2.0 版本中支持了 Dark Theme 和受信任的网络活动功能。
  3. Enterprise 1.0.0: Enterprise 是 Android Jetpack 中用于企业反馈的支持库,目前发布了第一个正式稳定版。
  4. Paging 2.1.1: Paging 是 Android Jetpack 用于 RecyclerView 分页的支持库,2.1.1 做了一些优化更新。
  5. Room 2.2.3:bug 修复。

4. 文章分享:Observing Room databases with Flow

fa5d04ea6649646c817cdbe1ad4bf966.png

在 Room 2.2.0 中,Room 增加了使用 Kotlin 的 Flow API 来观察数据库变化的功能,这里有一篇来自 Florina Muntenescu 的文章 《Room Flow》,来帮助你更好的学习该如何使用这一新特性。

文章地址在这里

https://medium.com/androiddevelopers/room-flow-273acffe5b57

5. Codelab 分享:Advanced Coroutines with Kotlin Flow and LiveData

c27802185303fa618c4bf39025c754b4.png

Tiem Song 和 Sean McQuillan 创建了新的 Codelab 来帮助大家学习:如何使用协程、LiveData 以及 Kotlin Flow 来编写程序,同时提供了完整代码的 GitHub 仓库地址。

Codelab 地址:

https://codelabs.developers.google.com/codelabs/advanced-kotlin-coroutines/#0

GitHub 地址:

https://github.com/googlecodelabs/kotlin-coroutines/tree/master/advanced-coroutines-codelab

6. Conference Videos 会议视频分享

这是我这几年切身体会到的一个比较重大的变化,很多的会议视频都被记录下来分享给大家学习,例如每年的 Google I/O 以及 Android Developer submit,能帮助许多不能到现场的同学们,比如我 hhh,快速的了解会议中发布的新讯息。

是不是很多同学也是通过去年,我为大家分享 Android Developer submit 19 时的文章关注的我呢?是的话记得右下角点个好看哦!

2eff920cad399bdfac1b573104ae1fc8.png

这里分享两个会议网站,Droidcon SF 和 Kotlinconf Videos ,他们发布了很多有关 Android 和 Kotlin 的会议视频,感兴趣的同学可以从下方的链接中查阅。

Droidcon SF:

https://www.droidcon.com/videos?path=SanFrancisco

Kotlinconf Videos:

https://www.youtube.com/playlist?list=PLQ176FUIyIUY6SKGl3Cj9yeYibBuRr3Hl

7. ADB Podcast 博客分享

2d1d370d460c92fa1ec52fa79941e233.png

Android Developers Backstage 是由 Chet Haase 参与创办的播客频道,至今已经创办了 5 年超过 130 期节目,每一期他们都会讨论和分享关于 Android 的方方面面,从代码到设计、从软件到硬件,如果你感兴趣,欢迎关注订阅。

ADB Podcast 地址:

http://androidbackstage.blogspot.com/​androidbackstage.blogspot.com

最后

至此,就是全新的 Now in Android 第一期的内容,第一期为大家介绍了新的 Room 和 Android KTX 文档、AndroidX 中新发布的支持库、以及一些有趣的文章、代码、视频、播客的分享。

我会开启 Now in Android 的新系列更新,关注【Android |Kotlin】就可以看到这一系列文章的全部内容。

感谢你的阅读。

推荐阅读

Android App Dark Theme(暗黑模式)适配指南

Android Studio Debug 的 9 个小技巧

Fragment 的现在以及未来

Android Studio 4.0 最新进展

Android 中不应该使用 Enum 吗?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/340713.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c++ 反射_固体火箭发动机黏接壳体超声C扫描检测系统研制与应用

某固体火箭发动机燃烧室采用壳体/绝热层/包覆层/推进剂的多界面结构形式,其中绝热层采用玻璃纤维缠绕成型后与钢质旋压壳体胶接而成。在胶接过程中,若存在壳体内部多余物清理不干净、绝热层与壳体配合不严、胶层内部气体未排净等情况,黏接层易…

java scala_经过几天的Scala回归Java的10个最烦人的事情

java scala因此,我正在尝试使用Scala,因为我想编写一个解析器,而Scala Parsers API似乎非常合适。 毕竟,我可以在Scala中实现解析器并将其包装在Java接口后面,因此除了附加的运行时依赖关系之外,应该不存在…

python区域找图命令_python读取图片任意范围区域

使用python进行图片处理,现在需要读出图片的任意一块区域,并将其转化为一维数组,方便后续卷积操作的使用。 下面使用两种方法进行处理: convert 函数 from PIL import Image import numpy as np import matplotlib.pyplot as plt …

[MEGA DEAL] Ultimate SQL Bootcamp认证捆绑包(98%)

像Pro一样管理任务和数据库,提供有关SQL Lite,Microsoft SQL,MySQL,PostgreSQL,Rest API和Oracle SQL的6门课程 嘿,怪胎, 本周,在我们的JCG Deals商店 ,我们提供了另一…

jersey spring_教程–带有Jersey和Spring的Java REST API设计和实现

jersey spring想要在Java中使用REST? 然后您来对地方了,因为在博客文章中,我将向您介绍如何“美丽”地设计REST API,以及如何使用Jersey框架在Java中实现它。 本教程中开发的RESTful API将演示针对存储在MySql数据库中的播客资源的…

html5 css svg,6款基于SVG的HTML5CSS3应用和动画

1、CSS3/SVG质感背景小图标 镂空效果图标按钮今天我们来分享一款用CSS3和SVG实现的质感背景小图标,鼠标滑过图标时出现镂空的效果,并且有质感背景的描边,效果非常不错。2、HTML5 SVG Tab滑块菜单 非常酷的Tab菜单之前我们分享过很多HTML5/CSS…

python 矩阵合并_numpy 的矩阵合并与分割

aiblog4.jpg 这次分享下numpy中矩阵的合并与分割,希望能帮助到大家。 在此附上视频链接 一、引入numpy第三方库 首先我们引入numpy这个第三方库,如果有同学没安装numpy可在命令行中pip install numpy进行安装(Mac用户 sudo pip3 install numpy) import numpy as np …

rto净化效率计算公式_你了解废气处理设备RTO蓄热式热氧化炉的工作原理么?

RTO蓄热式热氧化炉的净化效果以及稳定性都是相当不错的,但是由于其一次性投入成本高,许多企业都选择了放弃。但是科盈小编想要说的是从其99%的净化效果、换热系统、新型蜂窝技术以及日后的运行成本费用来看,这个费用就显得很可观了…

Selenium 4相对定位器如何改变您的测试方式?

网页可以包含许多Web元素或GUI元素,例如单选按钮,文本框,下拉菜单,输入等。Selenium自动化测试中的Web定位器用于对页面的Web元素执行不同的操作。 毫不奇怪,作为新的Selenium用户,我们要学习的第一件事是S…

电商 php 颜色数据怎么敲?_来客说电商|电商系统开发注意事项

来客B2B2C多用户电商系统打造支持自营招商入驻经营模式的电商平台(类似京东、天猫的经营模式),创新模块化设计整合运营商,供货商,批发商,入驻商,分销商,门店于一体,各个模…

朗读评价语言集锦_英语老师批改作业时的精彩评语集锦,超实用!

01你的作业评语,学生看得懂吗?评语是写给学生看的,所以一方面评语要使用学生能看得懂的英语来写,所使用的词汇和语法不能过高或过低于学生的现有水平,要切合学生的实际情况,符合学生的个性心理发展需要&…

u盘安装linux 提示no such device_Linux 网络基础设计

误删网卡配置文件解决思路本回复案例仅在Centos 7如试验成功其它系统无从考究,仅供参考请在root用户模式下配置获得设备名称DEVICE常见使用ifconfig,如果尚未安装请先安装如果只能找到Io和virbrN(Nnumber),请使用ifconfig -a复制名字(红线处,要以你机器的为准!)创建配置文件tou…

中兴c600olt数据配置_中兴天机Axon 10 Pro再掀波澜,4G版3199元起,5G版还有悬念?...

自MWC 2019大会多家手机厂商纷纷亮出自家的5G手机后,5G时代就已经从想象变为现实。不仅仅是手机终端,关于5G技术、基站建设也早就提上日程。技术的车轮永远比我们的想象快一步,当大家还在议论5G应用场景时,中兴天机Axon 10 Pro 4G…

学计算机二级分数,2020年9月计算机二级考试成绩可以查了 多少分及格

2020年9月份计算机二级考试成绩查询入口已经开通,考生可以在中国教育考试网上进行查询。计算机二级考试满分100分,60分及格。计算机二级成绩查询入口及合格标准全国计算机二级考试成绩查询唯一入口:中国教育考试网全国计算机二级考试实行百分…

怎么能把看不清的照片给看清_远视怎么矫正?需要佩戴眼镜吗?

昆明眼科医院,我们都知道眼睛一旦近视了,世界就变得一片模糊,而为了重新看清东西,我们不得不戴上近视眼镜。 那么反过来,远视需要戴眼镜吗?正常情况,我们出生时眼睛都处于一个远视状态,随着年龄…

cout不明确什么意思_劈腿什么意思?原来出轨和劈腿不一样!原来如此!

我们在生活中经常说,出轨和劈腿。然而,这两个词之间有一定的标准。劈腿原意是体操术语,体操运动员可以做一些困难的动作,如分裂、垂直分裂、水平分裂和半分裂。其中劈腿也被称为分裂,这意味着两条腿被最大程度地分开。…

hbase 生成文件_HBase:为客户行为生成搜索点击事件统计信息

hbase 生成文件在本文中,我们将探索HBase来存储客户搜索点击事件数据,并利用其基于搜索查询字符串和构面过滤器点击来获取客户行为信息。 我们将介绍使用MiniHBaseCluster,HBase Schema设计,使用HBaseSink与Flume集成以存储JSON数…

使用Spring Cloud Gateway保护反应式微服务

朋友不允许朋友写用户身份验证。 厌倦了管理自己的用户? 立即尝试Okta的API和Java SDK。 在几分钟之内即可对任何应用程序中的用户进行身份验证,管理和保护。 所以你想完全反应,是吗? 大! 反应式编程是使您的应用程序…

pythonqt4上位机开发_「新阁教育」自由口通信上位机实战案例

1、引言组态软件作为一种通用软件,体系结构较为庞大、功能软件包多、价格也比较昂贵,而且对于一些复杂的业务逻辑或自定义的协议,实现起来比较麻烦。近几年,C#/.NET上位机开发应用越来越广泛,相对于传统的组态软件的方…

判断单链表中的元素是否递增_检测单链表中是否有环(C语言)

检测单链表中是否有环(C语言)方法:双指针法思路使用两个指针,两个初始时都指向链表的头结点,然后one指针一次加一,另一个two指针一次加二。在链表有环时,two指针与one指针相等就说明有环。当one指针到达环的起始位置时…