Android Studio 2.0 带来多项新特性和改进,包括“即时运行(Instant Run)”、集成一个测试真实设备的谷歌服务、更快的模拟器、更快的构建速度、GPU 优化器和调试器、支持深度链接等。
Android Studio 2.0 是在最新版本的 IntelliJ IDEA 2016.1 上构建的,已于近日向开发人员提供下载。大约 6 个月前,当 Android Studio 2.0 进入金丝雀发布通道时,我们详细介绍过它的部分新特性,所以这里不再赘述,而把重点放在新增特性或改进上。
Android Studio 2.0 使用 Android 平台和 API 的最新稳定版本,但它不支持 Android N 开发者预览版,Android Studio 2.1 预览版包含对它的支持。安装该工具用于 Android N 开发需要一些手工工作,有关细节可以查看“安装预览版”页面。
Android Studio 2.0 其中一个有趣的特性是即时运行。在初次将一个应用程序部署到真实设备或模拟器上之后,即时运行会推送大部分发生变化的代码或资源,而不必新构建一个 APK。Android Studio 通过以下三种代码交换方式中的一种完成这项工作:
- 热交换——这是最快的方法,不需要重新初始化正在运行的应用程序的对象。在某些情况下,受影响的活动会自动重启。热交换用于已有方法的内容发生变化的情况。
- 暖交换——这需要重启当前活动,用户可能会看到图像闪烁。应用程序不会重启。暖交换用于资源变化或删除的情况。
- 冷交换——需要重启应用程序,仍然不会新建 APK。冷交换用于一长串的编辑,包括增加 / 删除 / 修改注解、对象属性、静态字段、静态方法签名、父类、已实现接口列表,等等。
编辑 manifest 文件时会有一个新的 APK 被构建和部署。在同时向多个设备部署时,即时运行不可用,因为它在不同的 API 层上使用不同的技术进行交换。
Android Studio 2.0 的另一项新特性是集成了云测试实验室Beta 版,这是谷歌的一项服务,为开发人员在运行于谷歌数据中心里的真实设备上测试Android 应用程序提供了可能。开发人员可以使用 Espresso 、 UI Automator 2.0 或 Robotium 编写自己的测试。如果没有创建测试,那么谷歌会运行 Robo 测试。这是一组基本测试,旨在查看应用程序是否会崩溃。Robo 测试模拟用户活动,通过界面执行各种任务。它会录制一个自动模拟视频。此外,测试还可以在测试的不同时刻截屏。作为结果的日志、视频或截屏可以从开发者控制台上获得。目前,云测试实验室服务还是免费提供的。不过,定价页面上的说法表明,谷歌未来会对它收费。
查看英文原文: New in Android Studio 2.0: Instant Run and Cloud Test Lab
评论