2012-02-11 23 views
0

我的許多應用程序用戶遇到以下崩潰問題。無法理解此符號化崩潰報告背後的真實原因,僅影響iOS 4.3.x用戶

這是在iOS 4.3.x版僅影響用戶(設備可以是任何 - iPhone/iPad的/ iPod)的

0 libobjc.A.dylib 0x34f00c98 objc_msgSend + 15 
1 CoreFoundation 0x3134bc43 -[NSObject(NSObject) release] + 30 
2 UIKit 0x314c900f -[UIViewController dealloc] + 174 
3 UIKit 0x3151f0cd -[UITableViewController dealloc] + 124 
4 MyApp 0x0001f985 -[WebNotesListViewController dealloc] (WebNotesListViewController.m:61) 
5 CoreFoundation 0x3134bc43 -[NSObject(NSObject) release] + 30 
6 MyApp 0x41b3 __arclite_objc_storeStrong (arclite.m:252) 
7 MyApp 0x000bc44d -[CountTouchGR .cxx_destruct] (CountTouchGR.m:13) 
8 libobjc.A.dylib 0x34f01961 object_cxxDestructFromClass + 52 
9 libobjc.A.dylib 0x34f03b15 object_cxxDestruct + 12 
10 libobjc.A.dylib 0x34f03b25 objc_destructInstance + 12 
11 libobjc.A.dylib 0x34f01917 object_dispose + 26 
12 CoreFoundation 0x3134bee5 -[NSObject(NSObject) dealloc] + 24 
13 UIKit 0x314aead7 -[UIGestureRecognizer dealloc] + 346 
14 UIKit 0x316aefc3 -[UISwipeGestureRecognizer dealloc] + 62 
15 CoreFoundation 0x3134bc43 -[NSObject(NSObject) release] + 30 
16 CoreFoundation 0x3134c1a1 CFRelease + 68 
17 CoreFoundation 0x31352139 -[__NSArrayM removeObjectAtIndex:] + 88 
18 CoreFoundation 0x3135a9dd -[NSMutableArray removeAllObjects] + 36 
19 UIKit 0x31470fcf -[UIView(UIViewGestures) removeAllGestureRecognizers] + 174 
20 UIKit 0x31470e6f -[UIView dealloc] + 294 
21 UIKit 0x315b27e5 -[UIScrollView dealloc] + 252 
22 UIKit 0x315bed0d -[UITableView dealloc] + 676 
23 CoreFoundation 0x3134bc43 -[NSObject(NSObject) release] + 30 
24 UIKit 0x314828df -[UIViewController setView:] + 270 
25 UIKit 0x315759cb -[UIViewController unloadViewForced:] + 78 
26 UIKit 0x315856b9 -[UIViewController unloadViewIfReloadable] + 16 
27 UIKit 0x315cc12d -[UIViewController purgeMemoryForReason:] + 40 
28 UIKit 0x315cc14d -[UIViewController didReceiveMemoryWarning] + 16 
29 MyApp 0x0001fc3b -[WebNotesListViewController didReceiveMemoryWarning] (WebNotesListViewController.m:101) 
30 UIKit 0x315cc163 -[UIViewController _didReceiveMemoryWarning:] + 14 
31 Foundation 0x34c28183 _nsnote_callback + 142 
32 CoreFoundation 0x313b620f __CFXNotificationPost_old + 402 
33 CoreFoundation 0x31350eeb _CFXNotificationPostNotification + 118 
34 Foundation 0x34c255d3 -[NSNotificationCenter postNotificationName:object:userInfo:] + 70 
35 Foundation 0x34c271c1 -[NSNotificationCenter postNotificationName:object:] + 24 
36 UIKit 0x315a2361 -[UIApplication _performMemoryWarning] + 48 
37 UIKit 0x315a2d83 -[UIApplication _receivedMemoryNotification] + 126 
38 UIKit 0x315a0507 _memoryStatusChanged + 42 
39 CoreFoundation 0x313b6d69 __CFNotificationCenterDarwinCallBack + 24 
40 CoreFoundation 0x313b3bdf __CFMachPortPerform + 210 
41 CoreFoundation 0x313bea97 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 26 
42 CoreFoundation 0x313c083f __CFRunLoopDoSource1 + 166 
43 CoreFoundation 0x313c160d __CFRunLoopRun + 520 
44 CoreFoundation 0x31351ec3 CFRunLoopRunSpecific + 230 
45 CoreFoundation 0x31351dcb CFRunLoopRunInMode + 58 
46 GraphicsServices 0x30cd041f GSEventRunModal + 114 
47 GraphicsServices 0x30cd04cb GSEventRun + 62 
48 UIKit 0x31477d69 -[UIApplication _run] + 404 
49 UIKit 0x31475807 UIApplicationMain + 670 
50 MyApp 0x4239 main (main.m:14) 

我無法破譯的真正原因(可轉換爲ARC有什麼與它的關係?)。

+0

在[這個問題]中有一個類似的問題(http://stackoverflow.com/questions/9155455/uitableview-crashes-when-the-same-row-is-selected-twice/9155477#9155477) – tipycalFlow 2012-02-11 06:02:02

回答

0

的問題是有關CountTouchGR類... 我不知道確切的技術原因..但它需要被聲明爲全局變量,而不是在viewDidLoad因爲正在前面做的。

感謝所有試圖幫助的人。

1

似乎像WebNotesListViewController.m:101得到了內存警告。因此它(視圖)被卸載並且在該過程中被釋放。然後將其屬性之一被引用給人一種EXEC_BAD_ACCESS

1

WebNotesListViewControllerdidReceiveMemoryWarning方法,你正在做的事情,你不應該在釋放內存 - 很難說什麼,但它似乎有一些與你的表。

很確定它與ARC轉換有關,請參閱該代碼可能在該方法中執行的操作。

編輯:

在第二次看,你還有一個的dealloc在WebNotesListViewController班 - 撞車真的從該類即將被釋放。

+0

該方法只有'[super didReceiveMemoryWarning];'代碼行 – BufferStack 2012-02-11 06:18:45

+0

在該類的其他地方,則導致視圖中的某個對象被釋放。馬修的建議是一個很好的建議,在模擬器中啓動殭屍程序運行你的代碼 - 然後在模擬器菜單中選擇「模擬內存警告」,這應該引發這個錯誤。 – 2012-02-11 06:44:23

+0

你能閱讀我對Matthew發表的評論並提出解決方案嗎? – BufferStack 2012-02-11 07:53:05

2

您正在向已被釋放的對象發送消息。嘗試在使用NSZombies儀器時重現崩潰。

另外,如果沒有殭屍,請嘗試在[WebNotesListViewController dealloc]開頭設置一個斷點,然後逐步執行,直到遇到崩潰。

+0

k ..我現在能夠重現崩潰..但是當我執行與啓用殭屍相同的步驟。 。該應用程序不會崩潰&沒有消息寫入日誌..我甚至嘗試過殭屍工具..它也沒有標記任何東西..我錯過了什麼..(我是新來的殭屍..後跟不同的教程 - 但仍然沒有幫助!) – BufferStack 2012-02-11 07:33:05