Tinker集成和使用(一)Tinker簡(jiǎn)介和運(yùn)行Tinker示例出現(xiàn)的問(wèn)題

Tinker出來(lái)有一段時(shí)間了根穷,我也是第一時(shí)間開(kāi)始使用這個(gè)框架柏靶,感覺(jué)真的很好用物邑,而且支持動(dòng)態(tài)根性的類型也很多溜哮,當(dāng)然還有它的多平臺(tái)的兼容性,畢竟是在微信上使用的色解。

Tinker簡(jiǎn)介(官方文檔)


Tinker是微信官方的Android熱補(bǔ)丁解決方案茬射,它支持動(dòng)態(tài)下發(fā)代碼、So庫(kù)以及資源冒签,讓?xiě)?yīng)用能夠在不需要重新安裝的情況下實(shí)現(xiàn)更新在抛。

Tinker注意事項(xiàng)


  1. Tinker不支持修改AndroidManifest.xml,Tinker不支持新增四大組件萧恕;

  2. 由于Google Play的開(kāi)發(fā)者條款限制刚梭,不建議在GP渠道動(dòng)態(tài)更新代碼;

  3. 由于apk-parser issue, TinkerId不能設(shè)置為非常短的數(shù)字票唆,例如“1.0”朴读;

  4. 在Android N上,補(bǔ)丁對(duì)應(yīng)用啟動(dòng)時(shí)間有輕微的影響走趋;

  5. 不支持部分三星android-19機(jī)型衅金,加載補(bǔ)丁時(shí)會(huì)主動(dòng)拋出"TinkerRuntimeException:checkDexInstall failed";

  6. 關(guān)于渠道包的問(wèn)題簿煌,若使用flavor編譯渠道包氮唯,會(huì)導(dǎo)致不同的渠道包由于BuildConfig變化導(dǎo)致classes.dex差異。這里建議的方式有:

    • 將渠道信息寫(xiě)在AndroidManifest.xml中姨伟;
    • 將渠道信息寫(xiě)在apk文件的zip comment中惩琉,這種是建議方式;
    • 若不同渠道存在功能上的差異夺荒,建議將差異部分放于單獨(dú)的dex或采用相同代碼不同配置方式實(shí)現(xiàn)瞒渠。

運(yùn)行Tinker示例缺少TinkerId問(wèn)題解決


(圖1)缺少TinkerId
  • 問(wèn)題描述:can't get git rev, you should add git to system path or just input test value, such as 'testTinkerId'

  • 產(chǎn)生原因:由于tinker生成補(bǔ)丁的版本號(hào),用的是git的版本號(hào)技扼,如果你不是通過(guò)git下載的tinker源代碼伍玖,或者沒(méi)有配置系統(tǒng)的git路徑,或者沒(méi)有commit一次剿吻,都有可能出現(xiàn)呢上面的問(wèn)題窍箍。

  • 解決辦法:

  • 方法一:不使用git的版本號(hào)作為tinkerId,改為使用versionName

(圖2)修改gitSha方法返回值
  • 方法二:使用git的版本號(hào),解決無(wú)法獲取到版本號(hào)的問(wèn)題仔燕。
  1. 下載和安裝git win64下載
  2. 配置AS的git路徑和系統(tǒng)git路徑
  • AS配置:File-->Settings-->Version Control-->Git-->Path to Git executable
    (圖3)AS配置git路徑

    點(diǎn)擊Test造垛,出現(xiàn)當(dāng)前git版本號(hào),表示AS的git路徑配置成功晰搀。
    (圖4)git配置成功

    系統(tǒng)配置:系統(tǒng)環(huán)境變量和Java環(huán)境配置一樣五辽,在此就不贅述了。配置成功后外恕,在控制臺(tái)數(shù)據(jù) git --version,檢測(cè)是否配置成功杆逗。
    (圖5)系統(tǒng)git配置

注意:配置完系統(tǒng)的git環(huán)境變量,如果你的AS處于開(kāi)啟的狀態(tài)鳞疲,請(qǐng)重啟后進(jìn)行g(shù)radle編譯罪郊。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市尚洽,隨后出現(xiàn)的幾起案子悔橄,更是在濱河造成了極大的恐慌,老刑警劉巖腺毫,帶你破解...
    沈念sama閱讀 222,000評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件癣疟,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡潮酒,警方通過(guò)查閱死者的電腦和手機(jī)睛挚,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,745評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)急黎,“玉大人扎狱,你說(shuō)我怎么就攤上這事〔蹋” “怎么了淤击?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,561評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)荣回。 經(jīng)常有香客問(wèn)我遭贸,道長(zhǎng),這世上最難降的妖魔是什么心软? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,782評(píng)論 1 298
  • 正文 為了忘掉前任,我火速辦了婚禮著蛙,結(jié)果婚禮上删铃,老公的妹妹穿的比我還像新娘。我一直安慰自己踏堡,他們只是感情好猎唁,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,798評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著顷蟆,像睡著了一般诫隅。 火紅的嫁衣襯著肌膚如雪腐魂。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 52,394評(píng)論 1 310
  • 那天逐纬,我揣著相機(jī)與錄音蛔屹,去河邊找鬼。 笑死豁生,一個(gè)胖子當(dāng)著我的面吹牛兔毒,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播甸箱,決...
    沈念sama閱讀 40,952評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼育叁,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了芍殖?” 一聲冷哼從身側(cè)響起豪嗽,我...
    開(kāi)封第一講書(shū)人閱讀 39,852評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎豌骏,沒(méi)想到半個(gè)月后昵骤,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,409評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡肯适,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,483評(píng)論 3 341
  • 正文 我和宋清朗相戀三年变秦,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片框舔。...
    茶點(diǎn)故事閱讀 40,615評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蹦玫,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出刘绣,到底是詐尸還是另有隱情樱溉,我是刑警寧澤,帶...
    沈念sama閱讀 36,303評(píng)論 5 350
  • 正文 年R本政府宣布纬凤,位于F島的核電站福贞,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏停士。R本人自食惡果不足惜挖帘,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,979評(píng)論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望恋技。 院中可真熱鬧拇舀,春花似錦、人聲如沸蜻底。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,470評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至要拂,卻和暖如春抠璃,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背脱惰。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,571評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工搏嗡, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人枪芒。 一個(gè)月前我還...
    沈念sama閱讀 49,041評(píng)論 3 377
  • 正文 我出身青樓彻况,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親舅踪。 傳聞我的和親對(duì)象是個(gè)殘疾皇子纽甘,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,630評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,302評(píng)論 25 707
  • Tinker使用 前言 寫(xiě)在前面的話,在上家公司一直在主導(dǎo)組件框架的開(kāi)發(fā)抽碌,所以對(duì)Android領(lǐng)域組件化悍赢,熱更新的...
    徐正峰閱讀 1,892評(píng)論 6 6
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)货徙,斷路器左权,智...
    卡卡羅2017閱讀 134,702評(píng)論 18 139
  • 前言 熱更新能力是Bugly為解決開(kāi)發(fā)者緊急修復(fù)線上bug,而無(wú)需重新發(fā)版讓用戶無(wú)感知就能把問(wèn)題修復(fù)的一項(xiàng)能力痴颊。B...
    Smile__EveryDay閱讀 24,867評(píng)論 31 19
  • 讀經(jīng)日期:2017年8月31日 農(nóng)歷:七月初十 星期:三 天氣:晴 煒圣媽誦讀:《易經(jīng)》系辭傳一遍赏迟,累計(jì)第八...
    泉州煒圣媽閱讀 258評(píng)論 0 0