Hello 各位同学,在本月 23 号至 24 号位于美国加利福尼亚的 Google Event Center 召开了今年的 Android Dev Summit。如果你作为一名 Android 开发人员错过了今年的 Google I/O 大会,那么这次的 Android Dev Summit 一定不要错过,因为 Android Dev Summit 被称为 Android 开发者的 I/O 大会,相比 Google I/O ,Android Dev Summit 所有的内容全部都是围绕 Android 展开,Google 的团队会为大家带来众多在技术方面的最新进展,例如:
- 新的 UI 构建库 Jetpack Compose
- 新的相机组件库 CameraX
- 最新的 Android Studio
- 如何愉快的使用 Kotlin、
- LiveData 与 Coroutines 和 Flow 之间如何共同使用
- 等等
所以在这周我会开启日更模式,每天一篇文章为大家介绍这些有趣的内容,帮助大家快速理解,没关注的小伙伴记得关注我以及我的公众号【Android丨Kotlin】鸭!如果觉得这些文章有点意思,记得分享转发评论点赞鸭!
开场 Keynote
在第一天的开场 Keynote 中,首先登场的 Google 的工程副总裁 Dave Burke。Dave 感叹了在最近 20 年的互联网世界发生了翻天覆地的变化,在他 8 岁的时候获得了人生中第一台电脑,是一台 BBC Micro 由一家叫做 Acorn 的英国公司所设计的。为什么提到这一台电脑呢?因为 BBC Micro 当时所使用的架构就是 ARM 架构,ARM 架构早期名称为Acorn Risc Machine,后来更名为Advanced RISC Machine。
令人惊喜的是,如今数亿台手机都在使用 ARM 架构。更令人惊喜的时,十年前发布初代 Android 的时候,没有会想到 Android 系统为成为目前移动设备中占有率最高的系统,Android 也有 1.0 进化到了今年的 10.0。Android 终端也由手机、平板衍生到了 TV、可穿戴设备、嵌入式设备等等。Dave 向大家分享了在他看来 Android 在未来十年规划中很重要的 5 点方向。
1. Helpful innovation(有意义的创新)
例如 Android Emergency Location Service (ELS),ELS 可帮助用户在遇到危险拨打紧急号码时,设备自动激活并计算当前位置发送给由 ELS 合作伙伴维护的端点。所有的计算全在手机本地完成,ELS 可以实现比手机发射塔和 GPS 更快更准确的定位。以及今年 Android 10 搭载的 Live caption,这是通过机器学习实现字幕的实时翻译功能,这项功能最初的目的是为了帮助解决聋哑人士无法正常看视频而设计的。
2. Updatability(强大的更新能力)
在 Android 8.0 之后 Google 团队推出了 Project Treble 计划。针对此计划 Google 重新设计了 Android 系统架构,以此来解决旧设备升级到最新版本所花费的时间太长的问题。这项计划简单说,就是将 HAL 和 Framework 层分离,由 Google 和 芯片厂商维护 HAL 部分,手机厂商只需维护 Framework 层,加速设备更新升级的流程。所以相信现在已经有大部分同学都已经上了 Android 10 的车了,这要放在几年前这么快的升级到新系统,是根本不存在是事情啊。
3. Security(安全性)
目前,Android 采用分层防御来确保用户安全。例如 Android 采用独立沙箱机制确保应用的独立性,采用 SELinux 对所有进程强制执行强制访问控制,以及 Google Play Protect 每天扫描数十亿的应用程序,检测安全行为。更值得注意的是,由于 Android 本身开源和跨平台的特性,任何人员和组织都可以对 Android 代码进行审查,能即使帮助 Android 发现自身的漏洞,在 Gartner 的 2019 年安全性报告中,Android Pie 在 30 项分类中有 26 项是得分最高的。
4. Privacy(隐私控制)
在最新的 Android 10 中添加了 50 多项与隐私相关的功能和更改。同时在最近的几个 Android 版本中,Google 一直在限制后台任务的行为,以保证用户的隐私和维护设备的有限资源。Android 10 中引入来全新的 Scope Storage 来防止 App 到处乱建文件夹的行为,确保用户数据安全。
5. Great developer experiences(更好的开发体验)
在过去的几年中,Android 团队最常被问到的问题就是:如何开发高质量的 Android 应用?所以 Android 团队推出了 Jetpack 组件,帮助开发者能更好的专注于自身业务需求的开发中,而不是与难用的 API 做斗争。同时宣布 Kotlin 为首选开发语言,推出了新的 UI 自建 Jetpack Compose,提升 Android Studio 构建速度,在 Github 上分享各个组件的最佳实践等等。在我个人看来,Google 在 Android 这几年的推进是非常迅猛的,而且 Android 会马上开启一个新的阶段。
接下来登场的是 Karen Ng,负责 Kotlin、Jetpack、Android Studio 的产品经理。她分享了目前 Google Play Top 1000 的应用中有 60% 的 App 已经采用 Koltin 开发,有 53% 的高级 Android 开发工程师从 Java 转到了 Kotlin,同时有来自 75 个国家超过 2w 名开发者参与了 Google 与 JetBrains 共同举办的 kotlin everywhere 分享。相比 Java Kotlin 可以写出更快、更少、更安全的代码。
Google 与 JetBrains 一起对 Android Studio 4.0 进行了优化提升,加快了项目的编译速度,更多的 Koltin lint 代码检查,新的 R8 工具优化了 Koltin 编译后字节码的大小以及 Koltin build scripts 的支持。
目前 Google 推出了 Koltin 技能认证,需要支付 149$ 才能参加考试(太贵了 😭),不过在大会现场的观众可以免费获得考试资格。
接下来登场的是一位叫 Romain Guy 的工程师,为大家介绍了 Jetpack 组件和目前处于 0.1.0-dev2 版本的 UI 组件 Compose。关于 Compose 我下载了最新的 Android Studio 4.0 预览版体验了一下:
不得不说,代码风格和 Flutter 太像了,左边是代码,编译后可以在右边窗口预览,我怀疑是不是直接拿 Flutter 的代码用 Kotlin 重写了一遍,不过有个很吊的功能是 @Model 注解,所有用 @Model 标示的类,就是自动变成一个可观察的对象,然后在 Compose 方法中就可以自动监听执行和这个可观察的对象相关的代码,不需要写任何多余的代码,只要添加一个注解,我的天,第一次发现这个功能的时候简直惊呆了。关于 Jetpack Compose 更多的内容会在之后几天的推送中更新,待我整理完就会发出来,而且毕竟现在才 0.1.0-dev2 版本,距离正式发布应该还有很长一段时间。
接下来一位登场的是 Google Play 的产品经理 Tian Lim,Tian 告诉我们到目前为止 Google Play 的工作中心都在围绕信任和安全开展,增加人工审核不断优化 Play Protect 保护机制,所以 Google Play 下载的应用是最安全的。Google Play 会严格控制应用权限,在安装开始前会向用户声明该应用所使用的所有权限,供用户参考,到目前为止非法访问和获取用户敏感数据的 App 减少了 98%。
在去年的 Google I/O 大会中,提出了新的 App 构建分发机制 Android App Bundle。超过 25 万个 App 采用了 AAB 技术,大幅减少了 App 安装包体积,提升了 App 装机率。
最后一位登场的是 Android 总监 Stephanie Cuthbertson,她简单回顾了整场 Keynote 的主要内容,之后宣布 Android Developer Challenge 回归!大家可以基于手机端的机器学习为出发点,发挥自己的想象力构建 Android 应用。在12月2日晚上12 点之前,提交自己的应用想法,在12月15日官方会选择 10 名有趣的 idea 提供技术支持,在明年2-4月会邀请参赛者前往 Google 总部由 Google 专家小组面对面进行技术指导,优胜者会得到 Google Play 的扶持上架以及 2020 年 Google I/O 的门票🎫。
好了,这就是第一天 Android Dev Summit 开场 Keynote 的全部内容,关于更多详细的内容,大家可以关注公众号【Android丨Kotlin】点击【阅读原文】在油管上查看。
明天的推送中,我会为大家带来关于【Jetpack Compose】的最近进展,没关注的小伙伴记得关注我以及我的公众号【Android丨Kotlin】鸭!如果觉得这些文章有点意思,记得分享转发评论点赞鸭!
我是 wanbo 大家加油!