2010-11-01 118 views
2

我無法重現我在蘋果崩潰報告中收到的錯誤。我有4個應用程序使用相同的代碼庫已經批准,現在我有2個拒絕與我從來沒有遇到過相同的錯誤。幫助解釋蘋果崩潰報告

下面是我從Apple Review回來的崩潰報告。 下面再次是我的應用程序委託中指示爲錯誤的行。 我正在查看系統調用中的錯誤,以防他們爲我提供一些燈光。

Incident Identifier: XXXXXX 
CrashReporter Key: XXXXXX 
Hardware Model:  iPhone3,1 
Process:   XXXX [120] 
Path:   XXXX 
Identifier:  XXXX 
Version:   ??? (???) 
Code Type:  ARM (Native) 
Parent Process: launchd [1] 

Date/Time:  XXXX 
OS Version:  iPhone OS 4.1 (8B117) 
Report Version: XXXX 

Exception Type: EXC_CRASH (SIGABRT) 
Exception Codes: 0x00000000, 0x00000000 
Crashed Thread: 0 

Thread 0 Crashed: 
0 libSystem.B.dylib    0x00078ac8 __kill + 8 
1 libSystem.B.dylib    0x00078ab8 kill + 4 
2 libSystem.B.dylib    0x00078aaa raise + 10 
3 libSystem.B.dylib    0x0008d03a abort + 50 
4 libstdc++.6.dylib    0x00044a20 __gnu_cxx::__verbose_terminate_handler() + 376 
5 libobjc.A.dylib     0x00005958 _objc_terminate + 104 
6 libstdc++.6.dylib    0x00042df2 __cxxabiv1::__terminate(void (*)()) + 46 
7 libstdc++.6.dylib    0x00042e46 std::terminate() + 10 
8 libstdc++.6.dylib    0x00042f16 __cxa_throw + 78 
9 libobjc.A.dylib     0x00004838 objc_exception_throw + 64 
10 CoreFoundation     0x000a167c -[NSObject(NSObject) doesNotRecognizeSelector:] + 96 
11 CoreFoundation     0x000491d2 ___forwarding___ + 502 
12 CoreFoundation     0x00048f88 _CF_forwarding_prep_0 + 40 
13 XXX       0x00002a02 -[XXX application:didFinishLaunchingWithOptions:] (XXXAppDelegate.m:94) 
14 UIKit       0x0000e47a -[UIApplication _callInitializationDelegatesForURL:payload:suspended:] + 766 
15 UIKit       0x000049e0 -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] + 200 
16 UIKit       0x0005dfd6 -[UIApplication handleEvent:withNewEvent:] + 1390 
17 UIKit       0x0005d8fa -[UIApplication sendEvent:] + 38 
18 UIKit       0x0005d330 _UIApplicationHandleEvent + 5104 
19 GraphicsServices    0x00005044 PurpleEventCallback + 660 
20 CoreFoundation     0x00034cdc __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 20 
21 CoreFoundation     0x00034ca0 __CFRunLoopDoSource1 + 160 
22 CoreFoundation     0x00027566 __CFRunLoopRun + 514 
23 CoreFoundation     0x00027270 CFRunLoopRunSpecific + 224 
24 CoreFoundation     0x00027178 CFRunLoopRunInMode + 52 
25 UIKit       0x000040fc -[UIApplication _run] + 364 
26 UIKit       0x00002128 UIApplicationMain + 664 
27 XXX       0x00002154 main (main.m:14) 
28 XXX       0x00002124 start + 32 

代碼在AppDelegate中:

NSArray *viewControllers = favNavController.viewControllers; 
FavouritesViewController *favouritesView = (FavouritesViewController*)[viewControllers objectAtIndex:0]; <-- Line indicated in crash report 

我不能重現此。任何見解或建議表示讚賞。

回答

1

我看起來像「favNavController.viewControllers」不是一個NSArray - 因此,當您嘗試執行「objectAtIndex」時,您會收到「無法識別的選擇器」。

您是否注意到它看起來應用程序正在啓動以響應URL? (OpenWithURL)?

我不知道這是否將您的代碼通過不同的初始化路徑 - 目前尚未完成。

+0

嗨,謝謝你的回覆。 OpenWithUrl並不是我熟悉的東西,現在看來,老實說,它不是我的設計中的一部分,因爲我的應用程序是以響應URL的形式啓動的。我的理解是,這就像使用經緯度作爲參數啓動Google地圖應用程序或使用tel:555-709-7654類型事件撥打電話號碼一樣? – androider 2010-11-01 15:27:45

+0

好吧,我一直試圖收集關於在崩潰報告中引用URL的系統調用的一些信息,但我沒有學到太多東西。調用callInitializationDelegatesForURL和_runWithURL:有效載荷:launchOrientation:statusBarStyle:statusBarHidden:啓動應用程序或其他方式的不同方式?對不起,但我正在努力...( – androider 2010-11-01 16:48:41

+0

)我故意調用一個無法識別的選擇器異常,在行被指責的,「favNavController.viewControllers」。然後轉載錯誤。哦,哦,爲什麼我沒有所以現在我必須明白爲什麼viewControllers數組造成了麻煩,它都是通過nib文件設置的,所以我認爲它會被照顧好。 – androider 2010-11-01 17:10:11