2011-09-29 79 views
0

我正在研究一個iOS項目,並試圖找出如何獲取所有在我的模擬器上執行某些操作時被調用的函數的跟蹤信息。XCode 4中的iOS跟蹤?

我尋找這樣的東西的原因是因爲我不太確定在模擬器上的某些操作會觸發哪些偵聽器。

乾杯,再次感謝。

+0

那你最終使用? – bryanmac

+0

只是斷點。 – sparkFinder

回答

2

設置斷點?

我會先看Apple's guide to debugging,但只需點擊要停止的代碼行左側的邊欄,就會出現一個藍色指示符。然後,當你運行這個應用程序時,當這行代碼被擊中時它會中斷。從那裏你可以使用底部的視圖查看堆棧(NSLog輸出的地方,有兩個視圖......一個有堆棧跟蹤)。

+0

我知道斷點 - 但我不太清楚在這種情況下在哪裏設置它們 - 我正在研究一個更大的項目,但我不知道所有的移動部分。 – sparkFinder

+0

@sparkFinder我想你將不得不圍繞代碼,設置一些試驗斷點,並慢慢弄清楚這個系統的運動部分。如果你有更明確的問題,有人可能會提供一個捷徑。即「當你在表格視圖中調用時調用的方法」,然後有人可以建議'UITableViewDelegate'的 - (void)tableView:didSelectRowAtIndexPath:'。或類似的東西。 –

0

當您使用多個偵聽器調試大型代碼庫時,有時很難找出將正確的中斷點放在哪裏。另一種選擇是登錄以查看所有觸發的偵聽器。

但是,NSLog的一個大問題是,你最終會拋棄你的代碼,並最終希望在發貨前將其刪除。

理想情況下,你可以:

  1. 添加日誌/在你的代碼跟蹤
  2. 啓用/禁用的水平
  3. 日誌可選擇將其關閉零售運輸。

我有記錄宏提供了我從別人拼湊在一起的那些,我對這篇SO文章做出了迴應並粘貼在了實現中。

What logging solutions to use while log-debugging objective-C code?

希望幫助