新的 Android Studio 4.0 更换了全新的启动界面,在今天 Google I/O 中官方发布了 Android Studio 3.5 的 beta 版,一个月以后发布了 Android Studio 3.6 beta 版,而最近的 Android Dev Summit 中为咱们带来了 Android Studio 4.0 预览版,今天咱们就来看一下,新的 Android Studio 4.0 为开发者带来了哪些新体验!java
接下来我会依据 Android Dev Summit 分享的内容以及本身的理解,为你们介绍 Android Studio 4.0 的最新进展,没关注的小伙伴记得关注我以及个人公众号【Android丨Kotlin】鸭!若是以为这些文章有点意思,记得分享转发评论点赞鸭!架构
新的 Build 窗口,在每一次 Build 以后,会出现一个新的 Build Speed 窗口,咱们能够在这个窗口里面查看在整个 Build 期间不一样插件、不一样任务的耗时,能够作针对性修复。同时还会提示咱们哪些插件是每一次 Build 的时候永远都在执行的,帮助咱们发现问题,减小没必要要的插件执行,缩短 Build 时间。这里面有不少分类,有兴趣的同窗能够逐个去研究。编辑器
在以前的文章中,我向你们分享过一些好的 Kotlin 项目,其中包括一个 Gradle 官方开源的 Koltin-DSL-sample。文章地址在这里:Kotlin 开源项目一周精选布局
如今 Android Studio 4.0 完善了 Kotlin Gradle DSL 的代码提示、在 IDE 中能够直接查看 DSL 的文档。咱们都知道以前默认的 Groovy 写法中,Android Studio 会自动帮助咱们检查现有依赖库是否有新版本更新,如今针对 Kotlin Gradle DSL 也保留支持了这一特性。动画
在编译方面,增长了新的 coreLibraryDesugaringEnabled true 指令,开启这个指令,咱们可使用 Java 8 中的某些高级 API。ui
例如上图所示的,list.stream() 方法,默认状况下,它只能在 API 24 以上使用,经过开启 coreLibraryDesugaringEnabled 可以消除版本的限制,在低于 API 24 的设备上也可使用此方法。目前此指令支持 java.util.stream、java.time、java.util.function、ConcurrentHashMap 等。此功能的目的在于解决旧版本上因为没法使用 Java 高级 API 而产生的持续性 bug 没法获得修复的问题。插件
新的 Android Studio 4.0 在编辑 ProGuard 文件时,提供的语法高亮、代码提示和错误检查,同时和 Refactor Name 的时候,ProGuard 文件中对应的字段也会及时更新。3d
新增了 viewBinding 指令,当咱们开启设置为 true 的时候,编译器会为咱们生成一个视图绑定类,即下图中的 ActivityMainBinding。调试
viewBinding 的目的在于确保咱们在代码中所使用的 View 是试图中确切存在的。防止使用findViewById 为空引发崩溃。(不过我在 4.0 canary 1 上面没有开启成功,应该是还有 bug 😂)code
目前咱们编写 UI 有三种方式,xml、代码编写自定义 View、Jetpack Compose。目前这三种方式所有在 Android Studio 4.0 上支持预览。
三者的预览界面都是同样的,分三种模式:编辑、预览、编辑+预览。别的不说自定义 View 支持预览那真是太方便了,能极大的提高开发效率。
并且,xml 的视图预览中支持多种不一样分辨率设备的同时预览,还能够预览国际化时不一样语言的排版状况,以及色盲模式的支持。(固然后面两项在 4.0 canary 1 中还没出现,只是在官方演示视频中作了讲解)
还有一项很牛逼的东西,就是 Android Studio 4.0 支持嵌入式模拟器,注意上图中的图像界面,不是咱们第一个说的预览界面,是真正的模拟器,左边开发右边调试,不再用切屏幕了。
Layout Inspector 也获得了更新,以前的 Layout Inspector 相似于布局快照,切换界面后,须要从新启动 Layout Inspector 。Android Studio 4.0 中 Layout Inspector 支持实时自动更新,当咱们的设备切换页面后,布局分析器中的页面也会更新,同时关于资源文件的显示也更加完备,增长了完整调用链的信息展现。还有一个特牛逼的功能(划重点了!)就是 Layout Inspector 支持 3D 模型检查,就像下图这样:
虽然官方视频中说到这些都会在 Android Studio 4.0 中出现,不过以我目前能下载到的 canary 1 版原本说,自定义 View 预览、嵌入式模拟器、新的 Layout Inspector 都没有找到,后续的 canary 应该会逐步支持。
有一期推送中我向你们介绍了:Android 8 种动画你用过几个?,最后一个就是 MotionLayout,但当时我也说了:
使用 MotionLayout 咱们须要在 xml 中自定义 MotionScene,在 MotionScene 中指定不一样 Layout 之间的变化。
查看到官方的 Demo 以后,说实话这种动画编写方式仍是有些繁琐的,还好此次 Android Studio 4.0 支持了新的动画编辑器,让咱们能够经过可视化的操做,来建立 MotionLayout 动画。
咱们能够指定 Layout 在 start 和 end 两个状态下的布局,设置动画持续时间,点击上方的 Transition 线,就能够预览动画,是否是很是简单!并且咱们能够在持续时间中,任意添加关键帧,设置每一帧的状态,更细小颗粒度的控制动画效果,关键帧能够设置属性、相对位置。有了 MotionLayout 和全新的动画编辑器,在 Android 上作动画限制你的再也不是 API 而是你的想象力。
以上就是在本次 Android Dev Summit 中 Android Studio 最新进展的部份内容,固然在这些功能的背后,IDE 自己的内存占用、编译速度、都有很大的提高,否则也不会直接版本号跳跃到 4.0,想一想隔壁苹果 Xcode 都出道 11 了,Android Studio 才到 4.0 真是慢工出细活啊。
明天的推送中,我会为你们带来关于【Android 10 Scoped Storage】的最近进展,没关注的小伙伴记得关注我以及个人公众号【Android丨Kotlin】鸭!若是以为这些文章有点意思,记得分享转发评论点赞鸭!
我是 wanbo 你们加油!