@946898963
2020-07-26T18:35:50.000000Z
字数 663
阅读 1278
Android学习笔记
Instant Run,是Android Studio 2.0新增的一个运行机制,在你编码开发、测试或debug的时候,它都能显著减少你对当前应用的构建和部署的时间。当我们第一次点击run、debug按钮的时候,它运行时间和我们往常一样。但是接下去的时间里,你每次修改代码后点击run、debug按钮,对应的改变将迅速的部署到你正在运行的程序上,传说速度快到你都来不及把注意力集中到手机屏幕上,它就已经做好相应的更改。
一个典型的构建周期流程图:
Instant Run的目标:尽可能多的剔除不必要的步骤,然后提升必要步骤的速度。
在实践中,这意味着:
Instant Run主要分为三种方式来加载app:
- Hot Swap 热替换
- Warm Swap 暖替换
- Cold Swap 冷替换
Hot Swap(热替换)
这是最令人激动的方式,它可以在不重启Activity的情况下实现代码的替换,简直是逆天啊!但是热替换的条件很苛刻,只能是在简单的修改了代码的情况下,AS才会采用这种方式。
Warm Swap (暖替换)
暖替换,是对热替换的让步,它会重启你所修改的Activity,但是不会重启App。如果在项目中修改了资源,AS会自动选择这种方式。
Cold Swap (冷替换)
如果你改变了代码的结构,如继承和改变了方法名,那么AS也只能无奈的选择冷替换了,它会重启整个App。
参考链接: