簡體   English   中英

什么是 Android Studio Instant Run?

[英]what is Android Studio Instant Run?

今天我更新了我的 Android Studio 並運行了以前版本中存在的應用程序。當我運行該應用程序時,以前版本的應用程序啟動速度非常快,但是當我更新 android studio 並使用更新版本運行相同的應用程序時,應用程序占用了太多資源是時候啟動了。我用谷歌搜索了這個問題,發現如果啟用了即時運行,然后禁用它,所以我做了同樣的事情,應用程序啟動的速度和原來一樣快。

現在我的問題是——

  1. 什么是即時運行?使用它的利弊是什么?
  2. 為什么應用程序在啟用即時運行時需要花費太多時間才能啟動,而當我禁用它時,為什么它會像以前一樣快速啟動應用程序。

Instant run 附帶最新版本的 Android Studio。 但在某些情況下,使用它時它是有線的。

什么是即時運行?

在普通的構建和運行中,整個 APK 文件都會更新並推送到設備。 但是當使用即時運行時,只有更新的部分會在設備中被替換。 Instant Run 通過執行熱插拔熱插拔冷插拔將更新的代碼和資源推送到您連接的設備或模擬器。 它會根據您所做的更改類型自動確定要執行的交換類型。

優點

它可能比普通構建更快。 但它要求應用程序在 API 21 以下構建時運行。

缺點

說真的,我覺得安裝不變的問題。 那是在某些時候使用即時運行時,應用程序似乎沒有更新。 它保持在以前的版本。 有時我覺得它比普通構建慢。

熱插拔:

這是最快的交換類型,可以更快地看到更改。 您的應用程序繼續運行,下次調用該方法時將使用具有新實現的存根方法。

熱交換:

這種交換仍然非常快,但是當 Instant Run 將更改的資源推送到您的應用程序時,它必須重新啟動當前的 Activity。

冷交換(API 級別 21 或更高):

這種交換有點慢,因為雖然不需要新的 APK 文件,但 Instant Run 在推送結構代碼更改時必須重新啟動整個應用程序。

禁用即時運行:文件=>設置=>構建、執行和部署=>即時運行=>取消選中啟用即時運行以進行熱插拔

在此處輸入圖片說明

請參閱文檔。

即時運行 = 增量構建 + 熱、溫或冷交換

沒有即時運行:

在此處輸入圖片說明

即時運行:

在此處輸入圖片說明

來源: https : //medium.com/google-developers/instant-run-how-does-it-work-294a1633367f

即時運行:

這是 Android Studio 中的一項功能,它使用魔法顯着減少編碼/測試/調試生命周期中增量代碼更改的構建和部署時間。

這是正常現象,是Instant Run功能的一部分。 理論上,后續加載應該更快。

您應該嘗試重新啟用它並觀察后續運行,您將看到結果。

Instant Run 允許您推送代碼更改而無需構建新的 APK。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM