Android 开发周报:Android N 将引入 3D Touch 功能、官方 MVP 架构解析

  • 郭亮

2016 年 4 月 19 日

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

新闻

  1. 《Android N 预览版加入启动捷径与新的 Emoji》:在第一版的 Androind N 开发者预览版推出一个多月后,近日谷歌端出了一个更新,增加了许多新的功能。在原有的画面分割、快速讯息回复、和省电工具外,预览版最主要的新功能是对 Vulkan 3D 绘图 API 的支持,并且多了启动捷径的功能,让你可以在首页建立直接启动到 App 中特定功能的捷径。
  2. 《微软举报 Android 份额太高,欧盟怒了》:欧盟正在加速对谷歌 Android 系统的反垄断调查。这表明,欧洲监管部门很可能将在几天时间内提出正式指控。消息人士表示,欧盟给予谷歌 24 小时的时间,从可能被用于本案的证据中删除商业机密。这表明,欧盟可能即将发出反对声明。
  3. 《Android N 将引入 3D Touch 功能》:在最新的 Android N 开发者预览版中,代码显示 Android 即将引入类似苹果 3D Touch 的功能。有开发者已经模拟出了这项功能。这让外界得以了解谷歌对于压力感应技术的想法。由于目前尚无支持 3D Touch 功能的 Android 硬件设备面市,因此这名开发者在模拟中利用了对图标的长按和下滑操作。谷歌的文档显示,3D Touch 只对应用图标本身,或谷歌所说的“启动器快捷方式”有效。

教程

  1. 《Android 官方 MVP 架构示例项目解析》:前段时间 Google 在 Github 推出了一个项目,专门展示 Android 引用各种各样的 MVP 架构,算是官方教程了。本文是对该项目的一个简单介绍。阅读文章,了解具体内容。
  2. 《Android 单元测试:首先,从是什么开始》:单元测试是开发环节中比较重要的一个过程,特别是对于一些大型的项目。随着移动 App 变得越来越复杂,参与开发的人越来越多,面向移动端的单元测试也开始受到大家的关注。本文对单元测试做了一个简单介绍,对于不了解单元测试的同学有一些帮助。
  3. 《Android 插件化原理解析——广播的管理》:本文介绍了 BroadcastReceiver 组件的插件化方式。作者通过大量的篇幅讲述了 BroadcastReceiver 的原理,通过对广播原理的解读,引出了 BroadcastReceiver 插件化方案的实现方法。插件方案对于 BroadcastReceiver 的处理相对简单,同时静态广播非静态的特性以及 BroadcastReceiver 先天的一些特点导致插件方案没有办法做到尽善尽美。不过在绝大多数情况下,文章中提到的的处理方式是可以满足需求的。阅读文章,看看作者是如何实现 BroadcastReceiver 的插件化。
  4. 《Android 项目使用 Dagger2 进行依赖注入》:从事 Android 开发的同学几乎都听说过大名鼎鼎的 Dagger2。本文讲解了 Dagger2 的一些使用方法。依赖注入是一个模式,如果你还没有使用它,那么在你的应用中迟早会用到该模式。
  5. 《如何提升 Android 代码的质量和语法》:本文介绍了通过自动化工具提高 Android 代码质量的几种不同方式,包括 Checkstyle, Findbugs, PMD,当然,还有我们最熟悉的 Android Lint。为了让代码保持缜密的语法,同时避免一些糟糕的实现和错误,使用自动化的方式测试代码十分有用,尤其是协作开发的时候。文章中也介绍了如何直接通过你的 Gradle 构建脚本使用这些工具。
  6. 《React Native 蛮荒开发生存指南》:React Native 虽然已经得到了很多支持,但坑仍然很多,在短期不会消失,因此你应该了解 RN 生存策略,避免掉坑出不来,或者从入门到放弃。本文就介绍了 RN 的生存指南,包括学习资源和遇到问题的解决之道。
  7. 《实战 Kotlin@Andorid(二):界面构建与扩展方法》:这是实战 Kotlin@Android 的第二部分,如果你还没读过第一部分,建议先阅读第一部分实战 Kotlin@Android(一):项目配置和语言转换

开源项目

  1. folding-cell-android:这个项目实现了折叠效果的 Cell,动画效果很赞。
  2. FlexLayout:FlexLayout 是最近比较火的一个开源项目,有了 FlexLayout,开发者可以用类似于 Java 的语法来写布局文件。FlexLayout 也可以实现一些 LinearLayout、RelativeLayout 无法实现的功能。这里是一篇关于 RelativeLayout, FlexLayout 及其它 Layout 性能对比的文章。
  3. redex:ReDex 是 Facebook 开源的工具,通过对字节码进行优化,以减小 Android Apk 大小,同时提高 App 启动速度。这里是一篇介绍 Redex 的文章。
  4. DMPlayer:DMPlayer 是一款离线音乐播放器。

感谢徐川对本文的审校。

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

移动Android语言 & 开发架构