1. 修正了一些bug,提升构建速度
- gradle3.6添加了对maven publish gradle插件的支持
- gradle3.6构建应用debug版本,插件会使用Zipfliner的全新打包工具,这会提升您的构建速度。如果遇到问题,也可以使用旧版的打包工具,使用如下代码即可
# gradle.properties
android.useNewApkCreator=false
- 使用sdk manager下载支持断点续传(旧版中断下载需要重新下载)
- gradle offline mode 离线状态使用Android Studio
view - Tool windows - gradle
调出gradel窗口一键开启或关闭离线模式
2. 新的拆分代码,视图编辑器
缩放,选取等设计状态将会被自动保存
3. ViewBinding
ViewBinding 代码引用视图提供编译时安全性和空安全,可以替代findViewbyId。只需在每个模块的build.gradle文件加入如下代码即可:
android {
viewBinding {
enabled = true
}
}
在 Activity 中使用视图绑定
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val binding = ActivityAwesomeBinding.inflate(layoutInflater)
binding.title.text = "Hello"
binding.subtext.text = "Concise, safe code"
binding.button.setOnClickListener { /* ... */ }
setContentView(binding.root)
}
Viewbinding对比 Kotlin 合成方法与 ButterKnife
4. Leak Detection
Memory Profiler中再次加入了泄漏检测功能,它可以标出没被销毁的activity和fragment实例,以及没有可用的FragmentManager但扔被引用的实例。
5. APK analyzer
现在支持对类和方法字节码进行去混淆处理,只需在dex文件查看器加载所需apk的proguard映射文件。
6. Apply Changes优化
使用Apply Changes部署相关代码,无需重启整个应用。
- 在方法主体中修改代码,而未更改任何资源,使用apply code changes就是最佳选择,因为他不会重启你的activity。
-
如果更新了资源, apply changes and restart activity, 将尝试通过重启activity(不重启应用)来应用代码和资源的改动。
-
某些情况下Apply Changes无法生效,比如删除类,删除方法,更改,Android Studio会提示您重新安装并运行您的应用,如果不想每次提示,可以通过如下配置在apply change失败时自动重新运行您的应用
7. Debugging external Apk
当调试或分析外部apk时,apk在ide外部更新无需重新创建项目,Android Studio会自动侦测apk改动,提供重新导入选项。
8. Kotlin support for NDK
多项功能在kotlin中受到支持