Android 开发周报:Google I/O 大会开幕、Kotlin 成一级编程语言

  • 郭亮

2017 年 5 月 21 日

话题:Android语言 & 开发架构

新闻

  1. 《谷歌 I/O 大会召开,AI 是重头戏》:美国时间 5 月 17 日 -19 日,Google I/O 2017 大会将于美国加利福尼亚州山景城的海岸线圆形剧场召开。开幕当天,I/O 大会大量的时间都花在了 AI 上面,剩下一部分时间介绍了下新的安卓系统 Android O,再剩下一点点时间,介绍了下他们的 VR 和 AR 产品。没错,这次人工智能是主角。

  2. 《Google 发布"Project Treble"来解决 Android 系统升级难》:众所周知,系统升级一直都是 Android 生态的一大难题。Android 基本保持了一年一个大版本的节奏,今年推出的就是 Android O(8.0),但基本除了 Nexus 和 Pixel,其他大部分 Android 机型都很难及时用到最新的 Android 系统。"Project Treble"也就应运而生,重新将 Android 操作系统模块化,将 Android 操作系统框架和特定硬件供应商的代码分开。

  3. 《1G 内存就可以!谷歌推出 Android Go 项目》:北京时间 5 月 18 日消息,谷歌在 I/O2017 大会上宣布,将启动名为 Android Go 的新项目,其可以被认为是 Android O 的改版,它主要是面向低端手机而开发。谷歌介绍,“Android Go”项目中将包含经过优化的应用和谷歌 Play 商店,减少对资源和数据流量的消耗。快速设置中加入了对数据使用量的控制,而当前 Chrome 浏览器中的“数据节约”功能将默认开启。其他一些应用也针对低带宽和低数据流量进行了重新设计。

教程

  1. 《Android Studio 3 Preview 发布》:Google I/O 2017 的第一天,Android Studio 3.0 Preview 发布,这个版本几个很大变化:支持 Kotlin、在 Xml 中支持字体、支持 Instant App 等。阅读文章,了解更多 Android Studio 3 Preview 的新特性。

  2. 《Kotlin 官方参考文档翻译完毕》:Kotlin 是一门支持多范式、多平台的现代静态编程语言。Kotlin 支持面向对象、泛型与函数式等编程范式,它支持 JVM、Android、JavaScript 目标平台。Kotlin 官方文档的参考部分已翻译校对完毕、且与官网同步,这也是目前唯一完整且最新的官方参考文档翻译。

  3. 《基于 React Native 的移动平台研发实践》:尽管 React Native 在移动前端存在着无可比拟的优势,但每一家在工程化的过程中还是存在各自不同的思考。而作为移动平台,不是简单的解决单一的一个 App 的问题。移动平台是支撑企业全面移动信息化的平台,需要解决企业面向不同场景下的各种诉求。针对移动 App 的使用者的场景不同,存在面向人和面向组织两种不尽相对的要求。本文围绕三个方向展开:React Native 的趋势、研发过程中的思考与实践。

  4. 《谷歌宣布 Kotlin 成安卓开发一级语言,我们如何来学习它》:5 月 18 日谷歌在今日举行的 I/O 开发者大会上宣布,将 Kotlin 语言作为安卓开发的一级编程语言。Kotlin 由 JetBrains 公司开发,与 Java 100% 互通,并具备诸多 Java 尚不支持的新特性。谷歌称还将与 JetBrains 公司合作,为 Kotlin 设立一个非盈利基金会。JetBrains 在 2010 年首次推出 Kotlin 编程语言,并在次年将之开源。下一版的 Android Studio(3.0) 也将提供支持。本文分享的重点是:当拿到一个新语言时,如何来学习。

  5. 《使用 Kotlin 优雅的开发 Android 应用》:在作者之前的一篇文章,介绍了 Kotlin 这门新语言的优势,也接触了一些常见的语法及其简单的使用。那么,我们该如何在 Android 中应用这门新的语言呢?今天的这篇文章带你学习使用 Kotlin 开发 Android 应用,并对比我们传统语言 Java,让你真真切切的感受到他的美和优雅。

开源项目

  1. BlockCanaryEx:记录主线程中执行的所有方法和它们的执行时间,当 app 卡顿时,将所有耗时方法直接展示给开发者,节省开发者定位卡顿问题的时间。

  2. android-pile-layout:一款横向滚动的 ListView 效果,动画很赞。

  3. transferee:这是一个支持缩略图到原图无缝过渡转变的组件。

  4. aesthetic:动态换肤引擎。


感谢徐川对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。

Android语言 & 开发架构