即時執行中的程式碼交換型別

Instant Run 有三種型別的程式碼交換,可以支援從 Android Studio 中的程式碼更快地除錯和執行應用程式。

  • 熱交換
  • 溫暖的交換
  • 冷交換

什麼時候觸發這些掉期?

**** 當現有方法的實現發生更改時,將觸發 HOT SWAP

**** 更改或刪除現有資源時會觸發 WARM SWAP (res 資料夾中的任何內容)

**** 只要你的應用程式碼中存在結構程式碼更改,即可進行轉換,例如

  1. 新增,刪除或更改:
  • 註釋
  • 例項欄位
  • 靜態欄位
  • 靜態方法簽名
  • 例項方法簽名
  1. 更改當前類繼承的父類
  2. 更改已實現介面的列表
  3. 更改類的靜態初始化程式
  4. 重新排序使用動態資源 ID 的佈局元素

程式碼交換髮生時會發生什麼?

HOT SWAP 更改立即可見 - 只要下次呼叫其實現已更改的方法即可。

WARM SWAP 重新啟動當前活動

COLD SWAP 重啟整個應用程式(無需重新安裝)