iOS熱更新幸斥、內(nèi)存泄漏檢測工具項目實踐

這幾天陸陸續(xù)續(xù)調(diào)研了下熱更新匹摇、內(nèi)存泄露檢測的開源小工具,使用熱更新可以解決正式版本上線后出現(xiàn)重大影響的bug甲葬,內(nèi)存泄露檢測則可某種程度解決app長時間不使用卡頓的問題廊勃,下面簡單給大家介紹一下:

1熱更新

所謂熱更新就是指代碼可以不通過重新打包的方式來更新客戶端的執(zhí)行代碼,借助于熱更新技術(shù)可以解決正式版本上線后出現(xiàn)的影響較大的bug(理論上全部可以解決经窖,但bug越復(fù)雜則腳本也會越復(fù)雜)坡垫。去年其實也斷斷續(xù)續(xù)研究過一想結(jié)合Waxpatch使用Lua腳本來實現(xiàn)熱更新,但如果真正實施還需server端的配合画侣,想法一直被擱置冰悠,今年我們使用的crash監(jiān)控平臺Bugly正好推出了熱更新功能,下面我主要給大家介紹下youqu項目里的熱更新實踐配乱。

(1)集成以及配置

使用Cocoapods集成溉卓,然后在appdelegate初始化配置皮迟,具體集成及配置可直接參見Bugly iOS熱更新SDK使用指南:

https://bugly.qq.com/docs/user-guide/instruction-manual-ios-hotfix/?v=20161229104838

(2)實踐:我想在版本上線后通過發(fā)布熱更新腳本將網(wǎng)頁版登錄的cell高度改為80dp(原為44dp)

i:寫JSPatch腳本

JSPatch腳本語法可參見:

https://github.com/bang590/JSPatch/wiki/JSPatch-%E5%9F%BA%E7%A1%80%E7%94%A8%E6%B3%95#%E5%8F%82%E6%95%B0%E4%BC%A0%E9%80%92

也可以直接OC代碼轉(zhuǎn)JS,具體見網(wǎng)站:

http://bang590.github.io/JSPatchConvertor/

(寫這段腳本的坑點在于類里面的枚舉腳本不識別的诵,需強制寫成直接的值万栅,腳本的轉(zhuǎn)換,腳本的坑點應(yīng)該還有很多西疤,越復(fù)雜的bug腳本也就會越復(fù)雜烦粒,所以熱更新并不是百分百的完美解決方案)

ii:本地測試

打開本地調(diào)試開關(guān),將腳本直接導(dǎo)入到工程目錄里即可測試

iii:bugly平臺環(huán)境測試

將本地調(diào)試開關(guān)關(guān)閉代赁,然后在bugly上傳腳本即可

一切配置準(zhǔn)備完畢后扰她,重啟app即可看到效果(也可將腳本生效的地方寫在app激活時),貼一張我的實踐圖:

JSPatch的實現(xiàn)原理貼幾個比較全的文檔可自行參看:

JSPatch實現(xiàn)原理詳解http://blog.cnbang.net/tech/2808/

JSPatch Git源碼和使用說明https://github.com/bang590/JSPatch

Bugly iOS熱更新SDK使用指南:

https://bugly.qq.com/docs/user-guide/instruction-manual-ios-hotfix/?v=20161229104838

2內(nèi)存泄露檢測

在知乎專欄看到一篇微信讀書iOS端性能優(yōu)化的文章芭碍,借鑒了它使用的MLeakFinder工具徒役,具體可參見https://zhuanlan.zhihu.com/p/21682730

悠趣項目實踐:

(1)集成

pod 'MLeaksFinder'

(2)檢測窖壕,根據(jù)提示去檢查代碼

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末忧勿,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子瞻讽,更是在濱河造成了極大的恐慌鸳吸,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件速勇,死亡現(xiàn)場離奇詭異晌砾,居然都是意外死亡,警方通過查閱死者的電腦和手機烦磁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進店門养匈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人都伪,你說我怎么就攤上這事呕乎。” “怎么了陨晶?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵楣嘁,是天一觀的道長。 經(jīng)常有香客問我珍逸,道長逐虚,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任谆膳,我火速辦了婚禮叭爱,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘漱病。我一直安慰自己买雾,他們只是感情好把曼,可當(dāng)我...
    茶點故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著漓穿,像睡著了一般嗤军。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上晃危,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天叙赚,我揣著相機與錄音,去河邊找鬼僚饭。 笑死震叮,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的鳍鸵。 我是一名探鬼主播苇瓣,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼偿乖!你這毒婦竟也來了击罪?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤贪薪,失蹤者是張志新(化名)和其女友劉穎媳禁,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體古掏,經(jīng)...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡损话,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年侦啸,在試婚紗的時候發(fā)現(xiàn)自己被綠了槽唾。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,814評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡光涂,死狀恐怖庞萍,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情忘闻,我是刑警寧澤钝计,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布,位于F島的核電站齐佳,受9級特大地震影響私恬,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜炼吴,卻給世界環(huán)境...
    茶點故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一本鸣、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧硅蹦,春花似錦荣德、人聲如沸闷煤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鲤拿。三九已至,卻和暖如春署咽,著一層夾襖步出監(jiān)牢的瞬間近顷,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工艇抠, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留幕庐,地道東北人。 一個月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓家淤,卻偏偏與公主長得像异剥,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子絮重,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,728評論 2 351

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