美文网首页
Instant Run

Instant Run

作者: 王凯岩_KY2 | 来源:发表于2017-10-10 14:10 被阅读0次

    Android Studio 2.0 中引入的可以“大幅减少应用更新时间”的功能。
    更改代码再次更新应用,Instant Run 无需再次构建新的 APK,而是直接向应用推送更新。


    与重新构建部署的区别

    • 重新构建部署


      重新构建部署
    • Instant Run


      Instant Run

    使用条件

    • Android Plugin for Gradle 版本在 2.0.0 或更高
    • module 级别的 build.gradle 文件中 minSdkVersion 设置为 15(Android 4.0.3) 或以上
    • 为获取最佳性能,minSdkVersion 设置为 21(Android 5.0) 或以上

    执行方式

    Android Studio 根据代码修改类型自动选择执行方式

    Instant Run 行为 适用范围
    heat exchange(热交换) 更改现有方法的实现代码
    moderate exchange(温和交换) 更改或移除现有资源文件
    cold exchange(冷交换) 结构性的代码更改
    deploy the new build(重新构建) manifest 更改
    • heat exchange :速度最快,应用不需要重新安装,也不需要重启。但是此种方式不会初始化正在运行的应用中的对象,所以此时如果要看到更新就需要重新动当前行为或者重启应用
    • moderate exchange:速度也非常快,应用会继续保持运行,但是当前 Activity 会被重启,重启的时候屏幕会发生小闪烁
    • cold exchange:速度相对前两种较慢,应用不需要重新安装,但是需要重启。Android Studio 会将我们每一次修改打成一个 dex 文件发到手机上,应用重启才会加载这个新的 dex 文件。(cold exchange 基于只有 5.0 及以上的设备才支持的 multidex 机制,以下则执行完整的 APK 安装过程)
    • deploy the new build:对 AndroidManifest.xml 以及其引用的资源进行更改时,应用会被重新构建,因为应用的相关信息(名字、版本等)需要在安装 APK 的时候通过 AndroidManifest.xml 确定
    • 结构性的代码更改
      • 添加、移除、更改注解、字段、方法
      • 更改继承类
      • 更改实现接口
      • 更改一个类的 static 修饰符
      • 使用动态资源 id 重新布局
    • manifest更改
      • 更改 AndroidManifest.xml
      • 更改 AndroidManifest.xml 所引用的资源,比如 string.xml、style.xml 等文件
      • 更改 UI 组件(需要清除并重新运行)

    使用 Instant Run

    • 打开 Preferences 对话框
    • 导航至 Build, Execution, Deployment > Instant Run
    • 通过勾选框控制 Instant Run 的使用
    使用 Instant Run

    相关文章

      网友评论

          本文标题:Instant Run

          本文链接:https://www.haomeiwen.com/subject/ctvvyxtx.html