1. 程式人生 > >Android InstantRun 工作原理(一)

Android InstantRun 工作原理(一)

熱拔插##

App Server
Android Studio monitors: 執行著Gradle任務來生成增量.dex檔案(這個dex檔案是對應著開發中的修改類) Android Studio會提取這些.dex檔案傳送到App Server,然後部署到App。
因為原來版本的類都裝載在執行中的程式了,Gradle會翻譯,更新好這些.dex檔案,傳送到App Server的時候,交給自定義的類載入器來載入.dex檔案。看看下面原理圖:

App Server會不斷監聽是否需要重寫類檔案,如果需要,任務會被立馬執行。新的更改便能立即被響應。我們可以通過打斷點除錯來發現它確實是這麼做,操作如下: