10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

Android Studio 2.0 发布 增加代码热更新功能

  • 2015-12-01
  • 本文字数:1069 字

    阅读完需:约 4 分钟

在今天的 Android 开发者大会中,Google 高调发布了 Android Studio 2.0。然而就在不到一周之前,Google 才发布了 Android Studio 1.5,许多开发者还没来得急更新。Android Studio 2.0d 的主题是提速,新特性主要包括代码热更新(Instant Run)、GPU 分析工具、Gradle 速度提升、高性能模拟器等。

代码热更新

这里的热更新是指编译器到模拟器或者开发机的热更新。其实之前通过 LayoutCast 插件已经可以实现 xml 资源文件热更新,但是有一定的局限性,仅支持 Mac 开发环境以及 Android 5.0。而 Android Studio 2.0 的 Instant Run 特性除了支持 xml 资源文件,还支持代码热更新,同时支持所有的 Android 版本、虚拟机、实体设备。在第一次运行后,更改代码或者 xml 资源文件,再次运行时,Android Studio 编译完成后将会直接在运行中的 APP 中部署修改的代码或者 xml 资源文件。

GPU 分析工具

通过 GPU Profiler,开发者可以看到详细的 OpenGL ES 状态和指令,记录整个 sessions,对 GPU 进行逐帧分析。对于那些开发图像密集型应用和游戏的开发者而言,这是一个不小的福利。

Gradle 提速

Android Studio 2.0 的编译速度将是之前版本的 2 至 2.5 倍,同时增量编译速度能快至 50 倍。相较而言,Facebook 此前推出的编译工具 buck 能将增量编译的速度提升 8 倍左右, LayoutCast 能提升 10 倍左右。总而言之,Google 的意思是 Android 开发者可以和 buck 与 LayoutCast 说再见了,全编译时聊天喝咖啡的日子也要结束了。

新的模拟器

通过这次更新,Google 发布了新的模拟器,它将比任何物理设备都运行得更快。除了运行速度方面的提升,开发团队也重新设计了用户界面。这表示新的模拟器将更易操作。通过它开发者可以模拟不同的网络状态、GPS 位置、摄像头和电量状态。值得一提的是,你可以缩放模拟器窗口的大小模拟不同的屏幕尺寸。这意味着 Android 开发者可以实时地在同一个模拟器中测试 APP 在不同尺寸设备中的表现。Android 开发者也可以和 Genymotion 说再见了。

总结

Android Studio 2.0 版本解决了 Android 开发者一直以来抱怨的多个问题,从多个层面提升了 Android 开发体验,尤其是效率的提升,为开发者节省了大量的时间与精力。正如大会中演讲者所言:Android 开发者的苦日子已经过去了。

详细信息请查看发布记录官方博客


感谢徐川对本文的审校。

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

2015-12-01 18:0018125
用户头像

发布了 32 篇内容, 共 20.7 次阅读, 收获喜欢 8 次。

关注

评论

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

第六周作业

腾志文(清样)

Week 06学习总结

Jeremy

可读代码编写炸鸡七 - 表达式太长就拆

多选参数

代码质量 代码组织 代码规范 可读代码编写 可读代码

如何进行需求梳理及埋点方案设计

易观大数据

LeetCode题解:141. 环形链表,JavaScript HashMap,详细注释

Lee Chen

大前端 LeetCode

计算机揭秘之:网络分类和性能分析

程序那些事

TCP 计算机网络 网络协议 计算机基础 udp

单例模式的几种写法你用的哪种?

Java小咖秀

Java 设计模式 23种设计模式

区块链加持的家用摄像头能拯救你的隐私吗?

CECBC

毕业半年的憨憨,将公司的代码上传到GitHub上了

诸葛小猿

GitHub 代码上传

朱嘉明:区块链成为经济转型、形成产业新业态的技术手段

CECBC

Python的四种作用域及调用顺序

BigYoung

Python 局部作用域 全局作用域

Week 06 命题作业

Jeremy

解决问题 1474 个,Flink 1.11 究竟有哪些易用性上的改善?

Apache Flink

flink

分布式事务解决方案Seata源码解析

Java 分布式 分布式事务

《北京市政务服务领域区块链应用创新蓝皮书(第一版)》正式发布

CECBC

第六周总结

腾志文(清样)

平价又好用的学习电脑小轩PRO来啦,为孩子创造超强学习体验

最新动态

MQTT的搭建、测试、应用及小程序的集成!

诸葛小猿

物联网 IoT mqtt broker

林左鸣 史瑞华:人类应鼎力进行的探索

CECBC

防止数据重复提交的6种方法(超简单)!

王磊

Java

图解:如何实现最小生成树

淡蓝色

Java 数据结构 算法

寻找握剑的手,青睐懂行的人

脑极体

企业架构框架之TOGAF

冯文辉

企业架构

【API进阶之路】老板给我涨薪30%!如何通过SDK接口搞定千万级流量直播

华为云开发者联盟

运维 服务器 直播 云服务 华为云

数十家技术社区联名推荐的GeekOnline来了!

Geek_116789

以中立性的立场看Severless的目标和流派

韩超

云原生 serverles

我想模糊删除redis key🤔

山中兰花草

Java lua redis 面试 批量任务

CAP原理

jason

聊聊Dubbo(二):简单入门

猿灯塔

可读代码编写炸鸡六 - 控制流尽量向前奔涌就好,不要分心

多选参数

代码 代码优化 代码规范 可读代码编写 可读代码

Flask-Restful 中 fileds.DateTime 不支持 strftime 格式

Leetao

Python flask web开发 Python框架 flask-restful

Android Studio 2.0发布 增加代码热更新功能_移动_百占辉_InfoQ精选文章