写点什么

Android Studio 2.0 引入热代码替换技术

  • 2015-11-27
  • 本文字数:994 字

    阅读完需:约 3 分钟

Android Studio 2.0 通过 canary channel 发布了预览版,在这个版本中它改进的关注点是使开发尽可能合理。这其中就包括了热代码替换、更快的完整编译、更快的模拟器、GPU Profiler 和 Debugger 工具以及同时运行多种类型的测试。

可能出现在 Android Studio 2.0 版里最重要的改进功能是即刻预览功能 Instant Run。一个代码的变动能立刻(1-2 秒)在连接的物理设备或者模拟器上生效,并且不需要通过一个完整的或者增量的完整编译和 APK 开发工具就能执行这个操作。该项功能在 Android Dev Summit 2015 ( video ) (视频资料)开发者峰会上被证实。它会被做成能在当前或者以后运用 Android ICS 工作的“几乎每一个我们所使用的模拟器”以及“当前每一个物理设备”上使用。

目前,Instant Run 支持实例方法或静态方法的实现改变,并可以添加或是移除一个类。它同样可以支持字符串资源的更改但它需要重启相关的活动。有一系列的变化例如编辑注释、域、方法签名在之前是不受支持的,但是 Google 正计划在接下来的几个月里研究支持它们的办法。

Android Studio 2.0 版还有如下几点改进:

  • 最初的完整编译时间增快了 2-2.5 倍。
  • 增量编译在“十秒以内”实现。
  • 模拟器“比以前快得多了”。一张图表显示了由于更出色的 I/O, ADB 推进了模拟器的速度。这款模拟器的速度比在 Android Studio Emulator 1.0 上快 15 倍并且比在物理设备 (Nexus 6) 上快超过五倍。另外,现在模拟器运用 SMP 来利用出现在开发用的计算机上的多核的优势。
  • 模拟器的 UI 已被重写以支持拖拽和调整。
  • IDE 支持其他形式的仿真:GPS(包括多点模拟路线)、电话和短信、电池情况。
  • 它是基于最近发布的 IntelliJ 15 基础之上开发的。
  • Android 和 Unit Tests 可以同时运行。
  • 它添加了包含证书的深层链接,如果 Google Search 可以正确索引申请的内容的话。

最后也是最重要的一点,Android Studio 2.0 版拥有一个可以逐帧重放场景的 GPU Profiler 和 Debugger 工具。这项工具对在地图、视频、游戏领域使用 OpenGL ES 工作的开发者来说是很有吸引力的。

查看英文原文: Android Studio 2.0 Introduces Hot Code Swapping


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群InfoQ 好读者(已满),InfoQ 读者交流群(#2)InfoQ 好读者)。

2015-11-27 18:004618
用户头像

发布了 218 篇内容, 共 77.3 次阅读, 收获喜欢 76 次。

关注

评论

发布
暂无评论
发现更多内容

Vue 组件如何在设置 Props

devpoint

Vue Vue3 InfoQ极客传媒15周年庆

在 Vue3 + Element Plus 中生成动态表格,动态修改表格,多级表头,合并单元格

蒋川

低代码 Vue3 组件 表格 Element Plus

Spring Data JPA 极速入门

Geek_rze78a

spring data 6月月更

leetcode 126. Word Ladder II 单词接龙 II(困难)

okokabcd

LeetCode 搜索 算法与数据结构

架构实战营第三模块课后作业

Geek_53787a

课后总结

不止于观测|阿里云可观测技术峰会正式上线

阿里巴巴云原生

阿里云 开源 云原生 可观测峰会 行业实践

关于volitile相关知识

北洋

6月月更

控制并发线程数的Semaphore

急需上岸的小谢

6月月更

Redux之利用 distinct 属性进行性能优化

岛上码农

flutter ios 安卓开发 跨平台应用 6月月更

python偏函数

红毛丹

Python 6月月更

数据库每日一题---第6天:删除重复的电子邮箱

知心宝贝

数据库 程序员 前端 后端 6月月更

java面向对象之多态(向上转型和向下转型)

写代码两年半

面向对象 javase 多态 6月月更

应用实践 | 物易云通基于 Apache Doris 的实时数据仓库建设

SelectDB

数据库 架构 最佳实践 Doris MySQL 数据库

AQUANEE尚处初期,已获币安等顶尖机构青睐

BlockChain先知

架构实战营模块 3 作业

Naoki

架构实战营

行泊一体方案「换道超车」,百度担当汽车智能化风向标

百度开发者中心

API 网关 Apache APISIX 在 Amazon Graviton3 上的安装与性能测试

亚马逊云科技 (Amazon Web Services)

apisix;Tech 专栏

架构设计-外包学生管理系统

Roy

架构实战营

3分钟初识网络功能虚拟化NFV

穿过生命散发芬芳

6月月更 NFV

百度APP视频播放中的解码优化

百度开发者中心

Hoo研究院 | OlympusDao调研报告

区块链前沿News

DAO Hoo 算法稳定

《阅读的方法》:怎么找阅读的乐趣?

郭明

读书笔记

数据结构与算法之时间复杂度与空间复杂度

未见花闻

6月月更

选择数字资产托管人时,要问的 6 个问题

BlockChain先知

华为云AppCube零门槛搭建5G消息服务号

乌龟哥哥

6月月更

AQUANEE尚处初期,已或币安等顶尖机构青睐

西柚子

1.4 宏观/中观/微观架构(连载)

凌晞

架构 架构设计 架构设计实战

OpenKruise v1.2:新增 PersistentPodState 实现有状态 Pod 拓扑固定与 IP 复用

阿里巴巴云原生

阿里云 云原生 开源项目

学生管理系统详细架构

intelamd

在这些根技术里,读懂华为的“三观”

脑极体

Android Studio 2.0引入热代码替换技术_Java_Abel Avram_InfoQ精选文章