準(zhǔn)備工作
基于master代碼卵慰,切出hotfix分支,修改bug榴芳,改完之后讓測(cè)試看下是否解決了問(wèn)題嗡靡。
目前gradle開(kāi)啟了并行編譯,所以窟感,我們需要執(zhí)行一次編譯來(lái)生成項(xiàng)目的底包讨彼,參考發(fā)包
1、修改熱修復(fù)的項(xiàng)目名
修改每個(gè)模塊根目錄下的gradle.properties
的屬性:TP_BASEINFO
找到根目錄
TIM截圖20180112153232.png
2柿祈、添加熱修復(fù)底包
添加熱修復(fù)的底包
TIM截圖20180112153624.png
3哈误、生成補(bǔ)丁包
buildVarity切換到Release模式
切換buildVarity.png
啟動(dòng)熱修復(fù)任務(wù)
創(chuàng)建patch文件.png
4哩至、上傳到tinkerPatch
找到補(bǔ)丁包位置,上傳到tinkerPatch
補(bǔ)丁包位置.png
選中開(kāi)發(fā)預(yù)覽蜜自,自己本地先測(cè)試
上傳到tinkerPatch
5菩貌、本地驗(yàn)證
手機(jī)里安裝
1:線上bug的apk包
2:tinkerPatch的本地調(diào)試工具debugTools
開(kāi)啟本地調(diào)試工具,勾選里面的開(kāi)發(fā)模式重荠;
打開(kāi)線上bug的apk包箭阶,等待若干秒,殺死后臺(tái)戈鲁,鎖屏仇参,重復(fù)幾次后,觀察是否生效
熱修復(fù)一共有兩個(gè)過(guò)程荞彼,一個(gè)是下載到用戶手機(jī)(退出重進(jìn))冈敛,一個(gè)是生效(退出待笑、鎖屏都可)鸣皂。所以多試幾次這個(gè)過(guò)程,就可以看到生效了
tinker監(jiān)控?cái)?shù)據(jù)
6暮蹂、發(fā)布到線上
補(bǔ)丁包測(cè)試通過(guò)后寞缝,發(fā)布到線上
點(diǎn)擊全量下發(fā)
7、代碼合并
把熱修復(fù)的代碼合并到master上仰泻,本次修復(fù)結(jié)束