即時執行中的程式碼交換型別
Instant Run 有三種型別的程式碼交換,可以支援從 Android Studio 中的程式碼更快地除錯和執行應用程式。
- 熱交換
- 溫暖的交換
- 冷交換
什麼時候觸發這些掉期?
**** 當現有方法的實現發生更改時,將觸發 HOT SWAP 。
**** 更改或刪除現有資源時會觸發 WARM SWAP (res 資料夾中的任何內容)
**** 只要你的應用程式碼中存在結構程式碼更改,即可進行冷轉換,例如
- 新增,刪除或更改:
- 註釋
- 例項欄位
- 靜態欄位
- 靜態方法簽名
- 例項方法簽名
- 更改當前類繼承的父類
- 更改已實現介面的列表
- 更改類的靜態初始化程式
- 重新排序使用動態資源 ID 的佈局元素
程式碼交換髮生時會發生什麼?
HOT SWAP 更改立即可見 - 只要下次呼叫其實現已更改的方法即可。
WARM SWAP 重新啟動當前活動
COLD SWAP 重啟整個應用程式(無需重新安裝)