教你如何使用Chisel增強(qiáng)LLDB調(diào)試

如果你想快速高效調(diào)試IOS程序不妨學(xué)習(xí)下LLDB插件-Chisel子眶,如果你使用過(guò)po,p等調(diào)試命令吓懈,是否覺(jué)得它們還是太弱,想知道一個(gè)view的層級(jí)還要使用code去打由μ濉(雖然我也這樣干過(guò)),簡(jiǎn)直不能忍受半醉,下面就讓Chisel來(lái)解救你吧疚俱。

1.Chisel的安裝

Github地址:https://github.com/facebook/chisel
Chisel的安裝非常簡(jiǎn)單,你只要安裝了homebrew環(huán)境缩多,一切都是那么自然輕松呆奕。

1. brew update
2. brew install chisel

安裝完成后最后出現(xiàn)一個(gè)安裝目錄,類(lèi)似

command script import /usr/local/opt/chisel/libexec/fblldb.py

這時(shí)候你只需要~/.lldbinit文件中添加

==> Caveats
Add the following line to ~/.lldbinit to load chisel when Xcode launches:
 command script import /usr/local/opt/chisel/libexec/fblldb.py

記得把上面的script替換為你的

如果 ~/.lldbinit 不存在 使用以下命令添加一個(gè)即可

touch ~/.lldbinit

然后重啟Xcode

2.內(nèi)置命令

2.1 pviews

這個(gè)命令可以打印一個(gè)view的層級(jí)衬吆,如:

(lldb) pviews self.window
     |<UIWindow: 0x7fd5b6816780; frame = (0 0; 375 667);    
 gestureRecognizers = <NSArray: 0x7fd5b6817770>;
    layer = <UIWindowLayer: 0x7fd5b68263f0>>
     | <UILayoutContainerView: 0x7fd5b6941780; 
    frame = (0 0; 375 667); autoresize = W+H; gestureRecognizers = <NSArray: 0x7fd5b694fc10>; layer = <CALayer: 0x7fd5b6931250>>
     | <UINavigationTransitionView: 0x7fd5b6949620; frame = (0 0;             375 667); clipsToBounds = YES; 
    autoresize = W+H; 
layer = <CALayer: 0x7fd5b6946e20>>

2.2 pvc

pvc可以打印一個(gè)viewcontroller的層級(jí)梁钾,而不是view 如:

(lldb) pvc self.mMDrawerController**
      <MMDrawerController: 0x7fd5b658b8c0; 
    view = <UIView; 0x7fd5b658cd00>;  frame = (0, 0; 375,     667)>
     | <SampleAlbumListVC: 0x7fd5b658bc90;
        view = <UIView; 0x7fd5b66be7a0>;  frame = (0, 0; 375, 667)>
     | <SlideMenuVC: 0x7fd5b6589b50; 
        view = <UIView; 0x7fd5b684f790>;   frame = (inf, inf; 0, 0)>

2.3 visualize

visualize這個(gè)命令比較強(qiáng)大,它可以使用預(yù)覽App打開(kāi)UImageView CGImageRef UIView CALayer 如:

visualize uiimageview

2.4 fv & fvc

這兩個(gè)命令是用來(lái)通過(guò)類(lèi)名搜索當(dāng)前內(nèi)存中存在的view和viewController實(shí)例的命令逊抡,支持正則搜索姆泻。

 (lldb)  fvc mm
0x7fd5b658b8c0 MMDrawerController

 (lldb)fv cate
  0x7fd5b6e06920 AlbumCategoryView
  0x7fd5b6d63f80 AlbumCategoryView
  0x7fd5b6d66e60 AlbumCategoryView
  0x7fd5b6d69d40 AlbumCategoryView
  0x7fd5b6d6cc20 AlbumCategoryView
  0x7fd5b6e0a150 AlbumCategoryView

2.5 show & hide

這兩個(gè)命令用來(lái)顯示和隱藏一個(gè)指定的 UIView

   (lldb) show self.view
   (lldb) hide  self.view

也可以使用內(nèi)存地址隱藏和現(xiàn)實(shí)view,比如通過(guò) fv cate找到一個(gè)view后使用hide隱藏它

 (lldb)fv cate
    0x7fd5b6e06920 AlbumCategoryView

 (lldb) hide  0x7fd5b6e06920

常用的就這些命令,當(dāng)然你也可以自定義Chisel命令冒嫡,但是需要你了解點(diǎn)python拇勃,由于我不懂 所以就略過(guò)了.....

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市孝凌,隨后出現(xiàn)的幾起案子方咆,更是在濱河造成了極大的恐慌,老刑警劉巖蟀架,帶你破解...
    沈念sama閱讀 207,248評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瓣赂,死亡現(xiàn)場(chǎng)離奇詭異榆骚,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)煌集,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門(mén)寨躁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人牙勘,你說(shuō)我怎么就攤上這事职恳。” “怎么了方面?”我有些...
    開(kāi)封第一講書(shū)人閱讀 153,443評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵放钦,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我恭金,道長(zhǎng)操禀,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,475評(píng)論 1 279
  • 正文 為了忘掉前任横腿,我火速辦了婚禮颓屑,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘耿焊。我一直安慰自己揪惦,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布罗侯。 她就那樣靜靜地躺著器腋,像睡著了一般。 火紅的嫁衣襯著肌膚如雪钩杰。 梳的紋絲不亂的頭發(fā)上纫塌,一...
    開(kāi)封第一講書(shū)人閱讀 49,185評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音讲弄,去河邊找鬼措左。 笑死,一個(gè)胖子當(dāng)著我的面吹牛避除,可吹牛的內(nèi)容都是我干的怎披。 我是一名探鬼主播,決...
    沈念sama閱讀 38,451評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼驹饺,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼钳枕!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起赏壹,我...
    開(kāi)封第一講書(shū)人閱讀 37,112評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤鱼炒,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后蝌借,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體昔瞧,經(jīng)...
    沈念sama閱讀 43,609評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡指蚁,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了自晰。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片凝化。...
    茶點(diǎn)故事閱讀 38,163評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖酬荞,靈堂內(nèi)的尸體忽然破棺而出搓劫,到底是詐尸還是另有隱情,我是刑警寧澤混巧,帶...
    沈念sama閱讀 33,803評(píng)論 4 323
  • 正文 年R本政府宣布枪向,位于F島的核電站,受9級(jí)特大地震影響咧党,放射性物質(zhì)發(fā)生泄漏秘蛔。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評(píng)論 3 307
  • 文/蒙蒙 一傍衡、第九天 我趴在偏房一處隱蔽的房頂上張望深员。 院中可真熱鬧,春花似錦蛙埂、人聲如沸倦畅。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,357評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)滔迈。三九已至,卻和暖如春被辑,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背敬惦。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,590評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工盼理, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人俄删。 一個(gè)月前我還...
    沈念sama閱讀 45,636評(píng)論 2 355
  • 正文 我出身青樓宏怔,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親畴椰。 傳聞我的和親對(duì)象是個(gè)殘疾皇子臊诊,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評(píng)論 2 344

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