3

アプリを審査のためにアプリストアに送信しましたが、次のように拒否されました。

App Store Review Guidelines に準拠していない iOS 5.1.1 を実行している iPhone 4 でアプリがクラッシュしたことがわかりました。Wi-Fi とセルラー ネットワークの両方で起動時にアプリがクラッシュしました。

そして、これは添付のクラッシュ ログです。

Incident Identifier: 65E8D233-2F02-4545-85C9-74CA4A346051
CrashReporter Key:   5f5257827e93649c799893055b12d3d61c937314
Hardware Model:      iPhone3,1
Process:         iman360 [42785]
Path:            /var/mobile/Applications/EA2B491A-194D-4669-ADF7-721593D2B14F/iman360.app/iman360
Identifier:      iman360
Version:         ??? (???)
Code Type:       ARM (Native)
Parent Process:  launchd [1]
Date/Time:       2012-08-09 13:41:37.107 -0700
OS Version:      iPhone OS 5.1.1 (9B206)
Report Version:  104

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_PROTECTION_FAILURE at 0x2fdfe6e0
Crashed Thread:  0

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   ???                             0x2fdfe6e0 0 + 803202784
1   iman360                         0x00036ba2 -[ComicCatController     refreshWithActionHandlerExeced:] (ComicCatController.m:216)
2   iman360                         0x00036b0c -[ComicCatController refresh] (ComicCatController.m:207)
3   iman360                         0x0002e682 -[TabComicCityViewController showSegTabView:] (TabComicCityViewController.m:312)
4   iman360                         0x0002dcbc -[TabComicCityViewController segmentedViewValueChanged:] (TabComicCityViewController.m:96)
5   CoreFoundation                  0x372ee3f6 -[NSObject performSelector:withObject:withObject:] + 46
6   UIKit                           0x31083e00 -[UIApplication sendAction:to:from:forEvent:] + 56
7   UIKit                           0x31083dbc -[UIApplication sendAction:toTarget:fromSender:forEvent:] + 24
8   UIKit                           0x31083d9a -[UIControl sendAction:to:forEvent:] + 38
9   UIKit                           0x31083b0a -[UIControl(Internal) _sendActionsForEvents:withEvent:] + 486
10  iman360                         0x00019598 -[Iman360SegmentedView moveThumbToIndex:animate:] (Iman360SegmentedView.m:360)
11  iman360                         0x00017ab4 -[Iman360SegmentedView willMoveToSuperview:] (Iman360SegmentedView.m:117)
12  UIKit                           0x3106b502 -[UIView(Internal) _addSubview:positioned:relativeTo:] + 390
13  UIKit                           0x3106b370 -[UIView(Hierarchy) addSubview:] + 24
14  iman360                         0x0002d996 -[TabComicCityViewController viewDidLoad] (TabComicCityViewController.m:49)
15  UIKit                           0x310a1c84 -[UIViewController view] + 160
16  iman360                         0x0001c86a +[ViewControllerManager initGlobalContentBgImgForViewController:] (ViewControllerManager.m:43)
17  iman360                         0x0000422c -[Iman360ViewControllerBase init] (Iman360ViewControllerBase.m:25)
18  iman360                         0x0002b8ce -[IndexTabViewControllerBase initWithIndexViewController:] (IndexTabViewControllerBase.m:19)
19  iman360                         0x00004706 -[IndexViewController viewDidLoad] (IndexViewController.m:58)
20  UIKit                           0x310a1c84 -[UIViewController view] + 160
21  UIKit                           0x310a045a -[UIWindow addRootViewControllerViewIfPossible] + 38
22  UIKit                           0x31224774 -[UIWindow setRootViewController:] + 332
23  iman360                         0x0001c7da +[ViewControllerManager switchToViewController:] (ViewControllerManager.m:32)
24  iman360                         0x0001c60a -[LoadingViewController onBackgroundJobFinishedWithUpdateInfo:] (LoadingViewController.m:165)
25  CoreFoundation                  0x372f31f4 -[NSObject performSelector:withObject:] +   36
26  Foundation                      0x37c0e740 __NSThreadPerformPerform + 344
27  CoreFoundation                  0x37368acc __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 8
28  CoreFoundation                  0x37368298 __CFRunLoopDoSources0 + 208
29  CoreFoundation                  0x3736703e __CFRunLoopRun + 646
30  CoreFoundation                  0x372ea49e CFRunLoopRunSpecific + 294
31  CoreFoundation                  0x372ea366 CFRunLoopRunInMode + 98
32  GraphicsServices                0x33aa9432 GSEventRunModal + 130
33  UIKit                           0x31096cce UIApplicationMain + 1074
34  iman360                         0x00004d5c main (main.m:23)
35  iman360                         0x00002e60 0x1000 + 7776

Thread 0 crashed with ARM Thread State:
r0: 0x2fdfe6bc    r1: 0x2fdfe6bc      r2: 0x2fdfe6e0      r3: 0x00000000
r4: 0x0015d980    r5: 0x00000001      r6: 0x00059384      r7: 0x2fdfe6e0
r8: 0x00059388    r9: 0x0000000e     r10: 0x00153da0     r11: 0x314490ab
ip: 0x000249a1    sp: 0x2fdfe6e0      lr: 0x000249c1      pc: 0x2fdfe6e0
cpsr: 0x200f0010

しかし、iPhone 4s と iPad でテストしたところ、問題なく動作しました。最初は、null ポインターを逆参照している可能性があると思いましたが、0x2fdfe6e0 の KERN_PROTECTION_FAILURE はそうではないことを示しています。これについて何か考えはありますか?

4

1 に答える 1

0

私は静的コード分析を行い、何かを得ました。それは愚かです。一部のクラス初期化子で [super init] メソッドを呼び出すのを忘れていました。しかし、これが問題であるかどうかを分析するのを手伝ってくれる人はいますか? アプリはまだアプリストアで審査中なので、これが問題なのかどうかはわかりません.

幸いなことに、今回は私のアプリが合格しました。カスタマイズしたクラス オブジェクトの初期化に [super init] を呼び出さなかったからです。時々うまくいくのになぜこれが起こるのか、私は非常に興味があります。

于 2012-10-28T03:27:34.393 に答える