Android Studio 2.2 来啦
今年的 I/O 2016 Google 放出了 Android Studio 2.2 的预览版,改进了多项功能,只不过为了保证公司项目不受影响,我一般都不安装预览版的,因为预览版意味着不稳定,可能遇到各种意想不到的坑,昨天,Google 终于发布了 Android Studio 2.2 的正式版,于是赶紧第一时间体验了下,按照 Google 的说法本次更新包含了三个方面:speed, smarts, and Android platform support,言外之意就是更快、更智能,而且增加了很多有用的功能,且听我一一分解。
1Layout Editor
本次更新带来了全新的布局编辑器,我们以后调 UI 将更方便。打开一个 XML
文件,默认的 Design 模式如下图所示,主要包含 Palette、Component Tree、Toolbar、Design Editor、Properties 五部分,直接可视化的操作使布局更加方便易操作。
当然对于习惯写 XML 代码的同学来说可以点击左下角的 Text 切换到代码格式,但是右边依然可以实时预览。Text 模式下的截图如下:
这里有个小技巧,可以操作快捷键 Control+Shift+Right/Left 来进行左右切换。
然后我们可以通过 Toolbar 那一栏来配置我们预览的主题外观:
评:改进的更方便了,以后可以教你们的设计师帮你们调 UI 了。
2Constraint Layout
Constraint Layout 翻译过来我把它叫约束布局,它也是今年 Google 全新推出的一种布局,它更强大,简单来说,用 Constraint Layout 可以实现之前需要各种嵌套才能实现的效果,我们知道过多的布局嵌套对性能影响是很大的,因为 Constraint Layout 更强大,所以属性也就特别多,不过 Google 完全提供了一种可视化的操作,一张动图你们感受下:
关于 Constraint Layout 的详细用法介绍这里就不多说了,Google 官方有个教程,想学习的可以见这里:
https://codelabs.developers.google.com/codelabs/constraint-layout/
友情提示,上面链接需要科学上网,英文阅读有困难的不妨看下这篇博客,我觉得写的还算不错:
http://www.jianshu.com/p/a8b49ff64cd3
以上 Google 对 UI 布局的改进可以看出,Google 的想法是想让布局更智能更可视化,对于一些刚接触 Android 的同学无意大大降低了门槛,只不过对于一些老一辈的程序员,比如我,还是习惯直接写代码调 UI 来的直接。
评:这个布局很强大,但是宝宝不喜欢拖来拖去,感觉设计师可以开始学 Android 了。
3Samples Browser
不知道大家知不知道 GitHub 上 Google 有个叫 Google Samples 的组织,地址在这里:
https://github.com/googlesamples
这里罗列了 Google 的上百个关于一些代码的示例,而这其中大部分都是 Android 相关的,比如 NavigationDrawer 不会用了,google 有个 android-NavigationDrawer 的示例。而这次 Google 直接把他关联到 Android Stduio 了,你可以在 Android Studio 选中一个类直接右键点击 Find Sample Code ,神奇的事情发生了:
上图可以看到,以选中 PackageManager 为例,下面直接出现了一些 Google Sample 相关的代码,方便你快速查找该类的用法,而且还有个链接直接指向到 Android Developer 官网该类的详细介绍,简直不要太方便,我喜欢这功能!
评:这功能很实用。
4Instant Run Improvements
Instant Run 的推出确实很不错,但是妈蛋第一次编译也太慢了吧,就是因为编译太慢我一般都是把该功能禁用的。我们先来看下 Google 官方的更新说明:
In this release, we have made many stability and reliability improvements to Instant Run. If you have previously disabled Instant Run, we encourage you to re-enable it and let us know if you come across further issues.
卧槽,看完我笑死了,原来 Google 早知道我们会把 Instant Run 功能禁用啊,按照 Google 的说法这次更新做了改进,更稳定,更快了。鼓励我们把 Instant Run 功能打开,好吧,我尝试了一把,确实速度上比之前快不少,大家可以重新打开体验了。打开方法见下图:
评:这次我终于把 Instant Run 功能打开了。
5Build cache (Experimental)
其实刚升级 AS 就强烈提示我升级 Gradle 到 2.14 版本,只需要把 Android Gradle plugin 的版本升级到 2.2.0 就好了。
classpath 'com.android.tools.build:gradle:2.2.0'
为了加快 Gradle 的编译速度,Google 新增了一个编译缓存的功能,不过目前还是实验性的,具体用法就是在你的 gradle.properties 文件里加上这么一行代码:
android.enableBuildCache=true
总体来说升级了 Gradle,加上这么一句代码,确实感觉编译快了些,大家可以自行感受下。
对了,每次编译生成的缓存在 ~/users/.android/build-cache 目录下,如果缓存过多可以手动删除该目录进行清除。
评:编译确实快了,不知道是不是错觉。
6APK Analyzer
Google 推出了一个 APK
分析器,现在可以很方便的使用 Android Studio 进行 APK 分析。具体用法点击 Build -> Analyze APK 然后选择你要分析的 APK 文件就可以了。
可以方便的查看全部文件和大小
可以直接查看 AndroidManifest.xml 文件
可以直接查看资源文件
查看图片
查看 xml 资源文件
可以直接查看 dex 文件
还可以对两个 apk 进行比较
评:这个功能堪称神器啊,以后人人都会逆向 APK 了。
7Virtual Sensors in the Android Emulator
Google 这次同样改进了模拟器,这次让模拟器支持虚拟传感器:
评:对于我这种从不用模拟器的人没啥用。
8Espresso Test Recorder (Beta)
Google 为测试新增了一个功能,就是我们可以对操作进行录像,然后根据我们的操作生成一些测试脚本,而且配合 Firebase 将更方便。
评:理论上来说此功能很不错,可以解放了测试人员的双手,只不过该功能还是测试,应该很不稳定,而且国内行情结合 Firebase 很困难,对开发意义不大,可以持续关注下。
9总结
除以上之外,此次更新还包括对 Java 8 的支持,Jack 编译器的改进,可以调试 GPU,改进了对 C++ 的支持等,总体来说此次更新推出了不少提升 Android 开发效率的工具,性能上也做了优化,值得大家更新!
官方更新说明:
http://android-developers.blogspot.tw/2016/09/android-studio-2-2.html
Android Studio 2.2 来啦的更多相关文章
- Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记
以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...
- Android Studio 多个编译环境配置 多渠道打包 APK输出配置
看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...
- Android Studio —— 重装 HAXM
Android Studio -- 重装 HAXM 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. Android SDK 自带模拟器一直以慢.卡 ...
- android studio 使用 jni 编译 opencv 完整实例 之 图像边缘检测!从此在andrid中自由使用 图像匹配、识别、检测
目录: 1,过程感慨: 2,运行环境: 3,准备工作: 4,编译 .so 5,遇到的关键问题及其解决方法 6,实现效果截图. (原创:转载声明出处:http://www.cnblogs.com/lin ...
- 使用 Android Studio 检测内存泄漏与解决内存泄漏问题
本文在腾讯技术推文上 修改 发布. http://wetest.qq.com/lab/view/63.html?from=ads_test2_qqtips&sessionUserType=BF ...
- 【详细教程】论android studio中如何申请百度地图新版Key中SHA1值
一.写在前面 现在越来越多的API接口要求都要求提供我们的项目SHA1值,开发版目前还要求不高,但是发布版是必定要求的.而目前定位在各大APP中也较为常见,当下主流的百度地图和高德地图都在申请的时候会 ...
- 【走过巨坑】android studio对于jni调用及运行闪退无法加载库的问题解决方案
相信很多小伙伴都在android开发中遇到调用jni的各种巨坑,因为我们不得不在很多地方用到第三方库so文件,然而第三方官方通常都只会给出ADT环境下的集成方式,而谷歌亲儿子android studi ...
- android studio你可能忽视的细节——启动白屏?drawable和mipmap出现的意义?这里都有!!!
android studio用了很久了,也不知道各位小伙伴有没有还在用eclipse的,如果还有,楼主真心推荐转到android studio来吧,毕竟亲儿子,你会知道除了启动速度稍微慢些,你找不到一 ...
- 解决Android Studio 无法显示Layout视图问题
在Android Studio 当中,如果你选择的SDK的版本 与你所显示的视图版本不一致时,会出现这个错误 Exception raised during rendering:com/android ...
- Android Studio快捷键
一.android studio 默认快捷键 刚开始接触一款开发软件,想必很想了解它的快捷方式,这会对你的编程起到很好的帮助,提高工作效率,接下来给你介绍下Android Studio一些常用的快 ...
随机推荐
- iOS之多控制器管理--项目中的常见文件
项目中的常见文件 内容大纲: 1.LaunchScreen 2.info.plist文件 3.pch文件 1.LaunchScreen xcode5和xcode6区别 1.xcode6没有Framew ...
- Memcache笔记03-php操作Memcached
通过php程序操作Memcached服务几种形式 Memcache 扩展 Memcached 扩展 Socket套接字操作 memcached-client.php(函数) 对于php扩展来说,dan ...
- .net WEB程序访问locahost和IP使用
1.服务都在本机调用用 localost 2.部署站点访问时用ip
- Oracle instr函数与SqlServer charindex的区别
INSTR(C1,C2[,I[,J]]) [功能]在一个字符串中搜索指定的字符,返回发现指定的字符的位置; [说明]多字节符(汉字.全角符等),按1个字符计算 [参数] C1 被搜索的字符串 ...
- 50个jquery代码片段(转)
本文会给你们展示50个jquery代码片段,这些代码能够给你的javascript项目提供帮助.其中的一些代码段是从jQuery1.4.2才开始支持的做法,另一些则是真正有用的函数或方法,他们能够帮助 ...
- oracle向in语句传入参数查不出数据
在oracle字符串中使用了in,但是查不出数据 string getModel = "select * from TB_YBSH where ID in :ids"; Oracl ...
- 烂泥:U盘安装Centos6.5
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 使用U盘安装Centos6.5,需要以下几个步骤: 1. 制作U盘linux系统 2. 设置服务器BIOS 3. 安装Centos,注意引导分区的安装 ...
- ExtJS提交到服务器端的方式以及简单的登录实现
ExtJS平台已经搭建好了,那么接下来要做网站的登录页面,当然还是在jsp页面里加载extjs的,首先我们先了解一下关于extjs是如何提交到服务器端的: 1.EXT的form表单ajax提交(默认提 ...
- gdb调试常用命令
gdb 调试常用命令 gcc -g mian.c -o main.out -o (定制生成的可执行文件的名称,缺省时为a.out) -g 使gdb可调试,在编译的时候,产生调试信息 gdb main. ...
- cri-o 与 cni的集成分析
// 创建pod时,network的设置 1.// cri-o/server/sandbox.go // RunPodSandbox creates and runs a pod-level sand ...