Android 开发周报:Google I/O 2016 成功举办、Android Studio 2.2 来袭

  • 郭亮

2016 年 5 月 24 日

话题:移动Android语言 & 开发架构

新闻

  1. 《Google I/O 最全记录》:美国当地时间 5 月 18 日上午,Google I/O 2016 正式拉开帷幕,超过 7000 名来自全球的开发者聚集美国加州谷歌总部附近的 Shoreline Amphitheatre 露天剧场参加大会。与此同时,世界各地几百万观众通过现场的直播观看了 I/O 大会。
  2. 《Android O 曝光,Android 8.0?》:Android N(Android 7.0)刚刚放出 Beta 版,今年 8 月、9 月正式版就将与广大用户见面。网上传出的一张 Moto G4 新机宣传图显示,“Android O”首次出现,内容是 Moto 承诺 G4 可以升级到 Android N 和 Android O。从字母排序和命名习惯来说,Android O 应该就是 Android 8.0 了。
  3. 《美国银行 ATM 支持通过 Android Pay 取现》:尽管很多人都相信移动支付将会取代现金和刷卡支付,但是目前来看这还有相当一段路要走,出门不带现金完全是不科学的。那么目前有一种折中的解决方案,那就是让手机充当银行卡的功能,而且支持 ATM 取现。

教程

  1. 《Google I/O:Android ConstraintLayout 扁平化布局入门》:在 Google IO 大会中不仅仅带来了 Android Studio 2.2 预览版,同时带给我们一个依赖约束的库——ConstraintLayout,该库类似于 iOS 中的约束。简单来说,ConstraintLayout 是相对布局的升级版本,但是区别与相对布局更加强调约束。何为约束,即控件之间的关系。该库能让你的布局更加扁平化,一般来说一个界面一层就够了;同时借助于 AS 我们能极其简单的完成界面布局。
  2. 《ReactMix:基于 HTML+JS+CSS 写 APP 的最佳实践》:React Native 官方支持 iOS 和 Android,但并没有覆盖 Web,有些人试图做出补救,如兼容 React Native API 的 ReactWeb,也有人用在 React Native 上再封装一层的形式来兼容 Web。ReacMix 采取的就是后面的这种做法。ReactMix 作者在 QCon 北京 2016 上对这个框架进行了分享,本文由演讲总结整理而成。
  3. 《Android 从按下开机键到启动发生了什么》:作为一个 Android 开发者,了解整个系统架构是必须的,所以这篇就总结一下 Android 手机从按下开机键到启动这一过程发生了什么。要了解 Android 手机启动过程,就需要先了解基于 linux 系统的电脑从按下电源键的那一刻起,发生了什么,这样类比可以更好的理解 Android 手机的启动过程。
  4. 《掌握 Android 中的 tools 命名空间》:你可能注意到了 tools 命名空间会出现在许多 Google 提供的样例布局 XML 文件中。此命名空间在开发阶段很有用而且不会影响用户体验。它包含了帮助我们在 Android Studio 设计视图中渲染布局的一套方便的属性。有时这些巧妙的属性会节约我们的构建时间,构建相关的 UI 改变会减少。阅读文章,了解详细的命名空间知识。
  5. 《Android 安全开发之浅谈密钥硬编码》:在阿里聚安全的漏洞扫描器中和人工 APP 安全审计中,作者经常发现有开发者将密钥硬编码在 Java 代码、文件中,这样做会引起很大风险。信息安全的基础在于密码学,而常用的密码学算法都是公开的,加密内容的保密依靠的是密钥的保密,密钥如果泄露,对于对称密码算法,根据用到的密钥算法和加密后的密文,很容易得到加密前的明文;对于非对称密码算法或者签名算法,根据密钥和要加密的明文,很容易获得计算出签名值,从而伪造签名。阅读文章,看看作者提出的防范建议。
  6. 《浅析 EventBus 3.0 实现思想》:著名的 EventBus 大家应该都比较熟悉了。本文作者主要针对其的设计思想做了一些记录,作者希望以尽量少的代码来将其主要设计思想说的透彻明白,阅读文章,了解一些 EventBus 的设计思想。这里是本周另外一篇分析 EventBus 3.0 源码的文章。
  7. 《Android 自定义控件之日历控件的实现》:有时,原生控件不能满足我们对于外观和功能的需求,这时候可以自定义控件来定制外观或功能;有时,原生控件可以通过复杂的编码实现想要的功能,这时候可以自定义控件来提高代码的可复用性。本文通过自定义日历控件,讲解了有关自定义 View 的相关知识。

开源项目

  1. Transitions-Everywhere:这是 Android Transitions API 的一个补丁,兼容 Android 2.2+。
  2. StickyHeaders:适用于 RecyclerView 的 Adapter 和 LayoutManager,支持分组、导航栏滑动伸缩效果。
  3. MPAndroidChart:这是一款强大的 Android 图表库,图表样式很丰富,使用方法简单。
  4. Android 即时通讯和 sns 开源项目汇总:这是一个整理即时通讯(IM)和社交系统(SNS)优秀开源项目的文档,项目上传 github 欢迎提交更新。

工具

  1. ECTranslation:Android Studio 翻译插件,可以将英文翻译为中文。

感谢徐川对本文的审校。

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

移动Android语言 & 开发架构