日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

xcode开发html5工具,5个Xcode开发调试技巧

發(fā)布時間:2025/3/15 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 xcode开发html5工具,5个Xcode开发调试技巧 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.Enable NSZombie Objects(開啟僵尸對象)

Enable NSZombie Objects可能是整個Xcode開發(fā)環(huán)境中最有用的調(diào)試技巧。這個技巧非常非常容易追蹤到重復釋放的問題。該技巧會以非常簡潔的方式打印指出重復釋放的類和該類的內(nèi)存地址。

怎么開啟僵尸對象呢?首先打開“Edit Scheme”(或者通過熱鍵?

現(xiàn)在我們可以關掉ARC來測試重復釋放的問題、異常和更容易產(chǎn)生的Crashs,但是即使開啟ARC,重復釋放和與內(nèi)存相關的Crashs也經(jīng)常發(fā)生。現(xiàn)在假設我們犯了一些錯誤導致了重復釋放的發(fā)生來觀察將要發(fā)生什么。

UIView*?view?=?[[[UIView?alloc]?init]?autorelease];

//...

//do?something?with?view...clearly?forgetting?that?it?has?been?autoreleased.

//

[view?release];

現(xiàn)在運行這段代碼會發(fā)生重復釋放的問題,程序將崩潰在主函數(shù),會像下面這樣:

Enable NSZombie Objects會讓調(diào)試器看起來像這樣:

這個例子看起來作用非常小,但是對于一個大工程通過Enable NSZombie Objects打印的信息是非常有用的。

2.對于所有異常添加Global BreakPoint(全局斷點)

當你的應用異常或者崩潰的時候Xcode喜歡做的一件事情是直接跳到主函數(shù),就像第一個調(diào)試技巧中用到的那個例子一樣。如果異常或者崩潰能夠停留在異常或者崩潰發(fā)生的地方那該是多好呀。幸運的是有一個方法可以做到。Xcode有一個漂亮的功能叫做異常斷點,允許我們在異常發(fā)生的時候在異常發(fā)生的地方放一個斷點。你可以指定具體的異常也可以指定所有的異常。

怎樣開啟異常斷點呢?工程切換到異常瀏覽窗口,點擊下方左側的“Add Breakpoint”按鈕,然后選擇“Add Exception Breakpoint”確保可以捕獲所有異常。

現(xiàn)在異常發(fā)生時調(diào)試器不會直接跳轉到主函數(shù)了,而是停留在了異常發(fā)生的地方。

這個斷點給了我們一個調(diào)試異常非常好的開始的點,不用我們再去遍歷代買去找異常發(fā)生的地方了。

3.Static Analyzer(靜態(tài)分析)

Static Analyzer是一個非常好的工具去發(fā)現(xiàn)編譯器警告不會提示的問題和一些個人的內(nèi)錯泄露和死存儲(不會用到的賦了值的變量)錯誤。這個方法可能大大的提高內(nèi)存使用和性能,以及提升應用的整體穩(wěn)定性和代碼質(zhì)量。

怎么打開Static Analyzer?打開Xcide的“Product”菜單,選擇Analyzer選項(或者使用熱鍵? shift B)。正像你看到的下面的截圖,Static Analyzer會捕獲任何應用內(nèi)的可能的問題然后以藍色的警告展示出來。

我們也可以設置我們的應用在我們編譯應用的時候自動開啟Static Analyzer,打開項目project文件,設置“Run Static Analyzer”為YES,如下圖:

4.Condational Breakpoints(條件斷點)

最后一個調(diào)試技巧條件斷點,這只是普通的斷點,當變量滿足一定條件時程序停止。這個調(diào)試技巧在當你想要捕獲一個循環(huán)中的變量的特定值或者一些不常發(fā)生的情況時是非常有用的,而不用你每次迭代都停止來查看。

怎樣開啟條件變量?只不過是添加一個普通斷點,然后右鍵點擊斷點選擇“Edit Breakpoint”,這時就打開了一個斷點編輯器,你可以在這里設置斷點條件(以及一些其他的斷點設置),然后選擇“Done”,這個調(diào)試技巧非常簡單吧。

5.unrecognized selector send to instancd 快速定位

在Debug菜單中Breakpoints->Create Symbolic Breakpoint

在Symbolic中填寫如下方法簽名

-[NSObject(NSObject)?doesNotRecognizeSelector:]

設置完成后再遇到類似的錯誤就會定位到具體的代碼。

總結

以上是生活随笔為你收集整理的xcode开发html5工具,5个Xcode开发调试技巧的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。