Android 开发周报:Android Studio 2.0 稳定版发布、Weex 思考

  • 郭亮

2016 年 4 月 12 日

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

新闻

  1. 《Android Studio 2.0 发布稳定版》:Android Studio 2.0 稳定版终于发布了,还在使用 1.5 版本或 beta 版的同学可以放心升级了。作为 Google 的官方 IDE,Android Studio 包括你构建应用时需要的所有东西,包括代码编辑器、代码分析工具、模拟器等等。最新的 2.0 稳定版带来了更快的构建速度和更快的模拟器,支持最新的 Android 和 Google Play Services。
  2. 《Google 正考虑用苹果的 Swift 语言开发 Android》:Google 正考虑将苹果几个月前开源的 Swift 作为 Android 系统的开发语言,不仅如此 Facebook、Uber 的代表也曾和 Google 一起在伦敦商议此事。由于 Google 和 Oracle 之间有关 Java 的诉讼仍在持续中,而 Swift 是开源的,意味着 Google 可以通过它开发 Android 系统而无需改变自己的开源移动架构。对于开发者来说,能够使用同一种语言为当前的两大移动平台(Android、iOS)编写应用,会节省大量成本与精力。
  3. 《Android N beta 可能开放给更多设备测试》:前不久 Google 突然放出了 Android N 的预览版,近日又有了这款全新 Android 系统的新消息:让 Android N beta 系统支持 OEM 合作伙伴设备,这也就意味着像三星、HTC、LG、Moto、华为等都有可能成为 beta 测试的目标群,而这些厂商只要有意愿,就可以为自己的用户提供 Android N beta 测试安装包。

教程

  1. 《Retrofit 分析 - 漂亮的解耦套路》:Retrofit 是由 square 出品的的 HTTP client。Retrofit 与 Volley 相比,前者解耦更彻底,可以通过注解来配置请求参数,通过工厂来生成 CallAdapter,Converter,可以使用不同的请求适配器 (CallAdapter), 支持 json、xml、protobuff 等不同的反序列化工具 (Converter)。本文详细讲解了 Retrofit 的解耦实现。Retrofit 的源码在这里
  2. 《实战 Kotlin@Android(一):项目配置和语言转换》:在过去的一年中,在 Android 开发圈有一个越来越火的话题,就是 JetBrains 开发的新 JVM 语言 Kotlin。这个团队还开发了 IntelliJ Idea,也就是 Android Studio 的基础。Kotlin 旨在通过全新的语言特色来替代老旧而不 cool 的 Java,又由于 Kotlin 可以 100% 兼容 Java,所以你在项目中可以想用多少用多少。而又因为 Kotlin 的标准库很小,很适合在资源有限的移动设备上开发使用。本文是一篇介绍 Kotlin 入门使用的文章,有助于我们快速上手该技术。
  3. 《Weex——关于移动端动态性的思考、实现和未来》:手淘作为电商应用,对客户端 / 前端的动态性要求非常之高,Weex 是他们在经历各种方案的摸索,以及在尝鲜使用 React Native 后给出的答案。本文主要讲述了 Weex 试图解决的问题,以及初次在生产环境的实践。
  4. 《MVVM 模式介绍》:Model-View-ViewModel 就是将其中的 View 的状态和行为抽象化,让我们可以将 UI 和业务逻辑分开。当然这些工作 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。本文出自开源项目HackerNewsReader的作者之手,作者结合项目讲解了 MVVM 在实践中的应用方法。
  5. 《Airbnb:我们的安卓客户端是如何使用 RxJava 的》:移动用户期望即时响应,而且还有在不同的线程间来回切换的需求。除了主线程,你还要做网络连接,同时你还需要在后台处理其他的各种不同的事情。最重要的是,你不能阻塞 UI 线程。RxJava 很好的解决了这类问题,RxJava 使得线程间的切换变得更加容易。本文来自知名房屋租赁平台 Airbnb 的员工之手,介绍了 Airbnb 的安卓客户端是如何使用 RxJava 的。
  6. 《NDK-JNI 实战教程(四)再谈新工具及 NDK 开发调试》:Android 开发工具的更新速度很快,基本上一年左右就需要更新工具以及自己的知识库。关于 NDK 的调试一直都是个坑,好在 Google 在大力布局 Android Studio 时开始来填坑了;以前 NDK 的调试都只能依赖于 GDB 命令行的调试,而现在却变得 GUI 化,方便了许多。本文是介绍关于 NDK 开发工具版本过度的文章,适合从事 NDK 开发的同学阅读学习。
  7. 《JJSearchViewAnim 源码分析》:JJSearchViewAnim 是一个实现了各种搜索交互动画的动画库,一共实现了 8 种不同的搜索交互动画,短短 4 天 github 上的 star 就已经 900+。可见此项目的受欢迎程度。本文结合项目源码,分析了动画的实现原理。
  8. 《为什么 Android 要采用 Binder 作为 IPC 机制?》:Android 另起炉灶开发了 Binder 驱动,而没有采用已有的方案,而 D-Bus 这样的方案也可以实现 Binder 的功能,是出于什么原因和什么考虑?安全性?性能?阅读文章,看看大家是如何回答该问题的。

开源项目

  1. JJSearchViewAnim:一个实现了各种搜索交互动画的动画库, 一共实现了 8 种不同的搜索交互动画。
  2. ActivityRouter:这是一个通过给 Activity 定义 URL,然后可以根据 URL 跳转到对应的 Activity 的库,支持在浏览器与 App 中跳入。我们也可以参考该项目来实现项目的解耦。
  3. Android CatLoadingView:这是一个非常有意思的加载动画,效果很赞。

工具

  1. 这些小工具让你的 Android 开发更高效(下):本文收藏了大量 Android 开发工具,开发者可以根据自己的需求选择使用。

报告

  1. 2015 年移动应用质量大数据报告:2015 年,随着移动智能设备的普及,移动端用户的增速明显放缓;相比之下,由于云服务、众筹平台、推广平台等基础设施和服务的不断改善,极大降低了创业的门槛,越来越多人投身于移动应用的创新创业中。在这份报告中,腾讯 Bugly 和腾讯优测会对 2015 年 Android 和 iOS 平台上的应用质量进行详细盘点,帮助你了解你的产品质量在行业中处于什么位置。

感谢徐川对本文的审校。

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

移动Android语言 & 开发架构