Android Studio即时运行是什么?

今天我已经更新了我的android工作室,并运行与以前的版本存在的应用程序。当我以前的版本应用程序启动速度非常快,但当我更新android工作室和运行相同的应用程序与更新的版本,然后应用程序太多时间推出。我search了这个问题,发现如果即时运行启用然后禁用这个,所以我做了相同的应用程序启动速度一样快。

现在我的问题是 –

  1. 什么是即时运行?使用它的是什么?
  2. 为什么应用程序需要花费太多的时间来启动即时运行时启动,当我禁用它,那么为什么它启动应用程序快速,因为它是。

Solutions Collecting From Web of "Android Studio即时运行是什么?"

即时运行随附最新版本的Android Studio。 但在某些情况下,使用它时会连线。

什么是即时运行?

在一个普通的构build和运行中,整个APK文件被更新并推送到设备。 但是当使用即时运行时,只有更新的部分在设备中被replace。 即时运行通过执行热插拔热插拔冷插拔将更新后的代码和资源推送到连接的设备或仿真器。 它会根据您所做的更改types自动确定要执行的交换types。

优点

这可能比一个普通的版本更快。 但是它要求应用程序在构buildAPI 21时运行。

缺点

说真的,我感觉到安装不变的问题。 这就是当应用程序似乎没有更新时使用即时运行。 它停留在以前的版本。 有时我觉得它比普通的版本慢。

热插拔:

这是交换速度最快的一种,可以更快速地进行更改。 您的应用程序将继续运行,下次调用该方法时将使用新实现的存根方法。

温暖的交换:

这个交换仍然非常快,但即时运行必须重新启动当前的活动,当它将更改的资源推送到您的应用程序。

冷交换(API级别21或更高):

这个交换有点慢,因为虽然不需要新的APK文件,但即时运行必须在推动结构代码更改时重新启动整个应用程序。

禁用即时运行: 文件=>设置=>构build,执行和 部署=>即时运行=>取消选中启用即时运行热插拔

在这里输入图像说明

请参阅文档。

即时运行:

这是Android Studio中的一个特性,它在编码/testing/debugging生命周期中使用魔术来显着缩短增量代码更改的构build和部署时间。

这是正常的,是Instant Runfunction的一部分。 理论上,后续的负载应该更快。

您应该尝试重新启用它并观察后续运行,您将看到结果。

即时运行允许您推送代码更改,而无需构build新的APK。