對不起,問這個noob問題,我知道它已被問過幾千次之前,我知道,因爲我有這個問題幾千次之前。但是這次谷歌沒有幫助。如何調試:libC++ abi.dylib:以NSException類型的未捕獲異常終止?
錯誤/終端打印:
libc++abi.dylib: terminating with uncaught exception of type NSException
我大致知道什麼類型的情況下,造成這一點,因爲我曾在過去的這個問題,這是很簡單的解決,通常是一個名不副實的功能或一些UI元素和我的代碼之間的斷開的鏈接,但現在我不知道是什麼可能導致它。
我已經嘗試過:
我已經添加起始的ViewController斷點噸,它遍歷所有@IBOutlets不會引發任何問題。我在AppDelegate的所有方法中都添加了斷點,並且在那裏的任何地方都不會中斷。代碼在到達任何viewDidLoad()方法之前崩潰。我已經清理了我的項目,重新啓動了XCode一千次,甚至破壞並重新制作了用戶界面和代碼之間的所有鏈接。重命名,然後重新分配每個@IBAction。
在這一點上,我什至不知道我沒有嘗試過。每一個stackoverflow帖子總是大約相同的事情「檢查斷開的鏈接等」,但這只是沒有幫助了。我不記得我改變了是什麼,因爲在我開始發現這個錯誤之前,我改變了很多小東西。我試圖把一切都回來,但這似乎沒有幫助。
當應用程序崩潰:
緊接着「applicationDidBecomeActve()」完成調試器進入一堆機器代碼,然後應用程序崩潰,我得到這個:
證明正確聯:
[移除圖像,因爲他們是不必要]
我的主要問題(S):
如果鏈接不是這裏的問題,還有什麼可能呢?
關於NSLogs /堆棧跟蹤
我很願意提供某種的NSLog或堆棧跟蹤我看到有人問,並給予其他的問題,但我不知道怎麼樣。我在互聯網上找不到石器時代關於如何開啓它們的任何東西。其他的一切都是如何使用調試器,但是我使用的是調試器,而我所得到的只是我的代碼的簡短瞥見,直到它最終崩潰爲止。
編輯:
顯然模擬器上進行的,而不是物理設備上運行時,我只能得到日誌。這裏是模擬器運行時,我得到的日誌:
objc[40258]: Class PLBuildVersion is implemented in both /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/AssetsLibraryServices.framework/AssetsLibraryServices (0x123242998) and /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/PhotoLibraryServices.framework/PhotoLibraryServices (0x123067d38). One of the two will be used. Which one is undefined.
2016-11-04 16:26:47.463 KotConnect[40258:1345011] Unknown class ProgressViewContainer in Interface Builder file.
2016-11-04 16:26:47.500 KotConnect[40258:1345011] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIView 0x7fbfe3c0a030> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key loadingView.'
*** First throw call stack:
(
0 CoreFoundation 0x00000001105ca34b __exceptionPreprocess + 171
1 libobjc.A.dylib 0x000000011002b21e objc_exception_throw + 48
2 CoreFoundation 0x00000001105ca299 -[NSException raise] + 9
3 Foundation 0x000000010fb3b26f -[NSObject(NSKeyValueCoding) setValue:forKey:] + 291
4 UIKit 0x0000000110e0580d -[UIView(CALayerDelegate) setValue:forKey:] + 173
5 UIKit 0x000000011114f79e -[UIRuntimeOutletConnection connect] + 109
6 CoreFoundation 0x000000011056f590 -[NSArray makeObjectsPerformSelector:] + 256
7 UIKit 0x000000011114e122 -[UINib instantiateWithOwner:options:] + 1867
8 UIKit 0x0000000110ee1c21 -[UIViewController _loadViewFromNibNamed:bundle:] + 386
9 UIKit 0x0000000110ee2543 -[UIViewController loadView] + 177
10 UIKit 0x0000000110ee2878 -[UIViewController loadViewIfRequired] + 201
11 UIKit 0x0000000110f2307b -[UINavigationController _layoutViewController:] + 55
12 UIKit 0x0000000110f23963 -[UINavigationController _updateScrollViewFromViewController:toViewController:] + 471
13 UIKit 0x0000000110f23ada -[UINavigationController _startTransition:fromViewController:toViewController:] + 133
14 UIKit 0x0000000110f24ce5 -[UINavigationController _startDeferredTransitionIfNeeded:] + 874
15 UIKit 0x0000000110f25dc7 -[UINavigationController __viewWillLayoutSubviews] + 58
16 UIKit 0x000000011111cd6f -[UILayoutContainerView layoutSubviews] + 223
17 UIKit 0x0000000110e05f50 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 1237
18 QuartzCore 0x0000000110ac3cc4 -[CALayer layoutSublayers] + 146
19 QuartzCore 0x0000000110ab7788 _ZN2CA5Layer16layout_if_neededEPNS_11TransactionE + 366
20 QuartzCore 0x0000000110ab7606 _ZN2CA5Layer28layout_and_display_if_neededEPNS_11TransactionE + 24
21 QuartzCore 0x0000000110a45680 _ZN2CA7Context18commit_transactionEPNS_11TransactionE + 280
22 QuartzCore 0x0000000110a72767 _ZN2CA11Transaction6commitEv + 475
23 QuartzCore 0x0000000110a730d7 _ZN2CA11Transaction17observer_callbackEP19__CFRunLoopObservermPv + 113
24 CoreFoundation 0x000000011056ee17 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23
25 CoreFoundation 0x000000011056ed87 __CFRunLoopDoObservers + 391
26 CoreFoundation 0x00000001105534b6 CFRunLoopRunSpecific + 454
27 UIKit 0x0000000110d3b7e6 -[UIApplication _run] + 434
28 UIKit 0x0000000110d41964 UIApplicationMain + 159
29 KotConnect 0x000000010d52cc8f main + 111
30 libdyld.dylib 0x00000001135c968d start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb)
您可以發佈您的應用程序日誌,當你的應用程序崩潰? –
終於找到如何獲取日誌後,我設法弄清楚它是什麼。顯然,我的自定義類沒有被分配正確的模塊。我發現這裏的修復:http://stackoverflow.com/questions/24924966/xcode-6-strange-bug-unknown-class-in-interface-builder-file – Reilem
然後恭喜! –