2012-09-10 2 views
5

Appleは私たちのiPhoneアプリを拒否し、iPadでクラッシュしたことを示しています。 3つの異なるiPadsでクラッシュを再現できず、確認するように求めました。 AppleはiPhone 4でクラッシュしたと言って戻ってきた(ログにはiPhone 3が表示されている)。それを再現することはできません...アプリのレビューで見つかったクラッシュを再現できません。誰でもこのクラッシュレポートを理解するのに役立つことができますか?

次の方法でクラッシュを生成します。 [ ]を最初に見てみましょうを選択してください。アプリケーションがクラッシュします。誰もがこのクラッシュレポートを私たちに啓発することができます

ncident Identifier: 8B5E90DE-99FD-4279-B634-2C777209F2B3 
CrashReporter Key: 6e9ccd0fcdc29915ebe22fb7376bd343cdcc252a 
Hardware Model:  iPhone3,1 
Process:   Snug [297] 
Path:   /var/mobile/Applications/DB3EFF00-7E5E-492A-9108-1341B6371B0D/Snug.app/Snug 
Identifier:  Snug 
Version:   ??? (???) 
Code Type:  ARM (Native) 
Parent Process: launchd [1] 

Date/Time:  2012-09-09 13:00:32.642 -0700 
OS Version:  iPhone OS 5.1.1 (9B206) 
Report Version: 104 

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

Thread 0 name: Dispatch queue: com.apple.main-thread 
Thread 0: 
0 libsystem_kernel.dylib   0x319e7660 __semwait_signal_nocancel + 24 
1 libsystem_c.dylib    0x3410b4da nanosleep$NOCANCEL + 118 
2 libsystem_c.dylib    0x340dd3a0 usleep$NOCANCEL + 44 
3 libsystem_c.dylib    0x340dd2b6 abort + 118 
4 Snug       0x001f8760 uncaught_exception_handler + 12 
5 CoreFoundation     0x37830950 __handleUncaughtException + 68 
6 libobjc.A.dylib     0x3553533e _objc_terminate + 122 
7 libc++abi.dylib     0x36f683be safe_handler_caller(void (*)()) + 70 
8 libc++abi.dylib     0x36f6844a std::terminate() + 14 
9 libc++abi.dylib     0x36f6981e __cxa_rethrow + 82 
10 libobjc.A.dylib     0x355352a2 objc_exception_rethrow + 6 
11 CoreFoundation     0x37786506 CFRunLoopRunSpecific + 398 
12 CoreFoundation     0x37786366 CFRunLoopRunInMode + 98 
13 GraphicsServices    0x33f45432 GSEventRunModal + 130 
14 UIKit       0x31532cce UIApplicationMain + 1074 
15 Snug       0x000f590c main (main.m:16) 
16 Snug       0x000f58c0 start + 32 

Thread 1 name: Dispatch queue: com.apple.libdispatch-manager 
Thread 1: 
0 libsystem_kernel.dylib   0x319d73a8 kevent + 24 
1 libdispatch.dylib    0x3095cea4 _dispatch_mgr_invoke + 708 
2 libdispatch.dylib    0x3095cbc2 _dispatch_mgr_thread + 30 

Thread 2: 
0 libsystem_kernel.dylib   0x319e7cd4 __workq_kernreturn + 8 
1 libsystem_c.dylib    0x3409ff36 _pthread_wqthread + 610 
2 libsystem_c.dylib    0x3409fcc8 start_wqthread + 0 

Thread 3: 
0 libsystem_kernel.dylib   0x319e7cd4 __workq_kernreturn + 8 
1 libsystem_c.dylib    0x3409ff36 _pthread_wqthread + 610 
2 libsystem_c.dylib    0x3409fcc8 start_wqthread + 0 

Thread 4 name: WebThread 
Thread 4: 
0 libsystem_kernel.dylib   0x319d7004 mach_msg_trap + 20 
1 libsystem_kernel.dylib   0x319d71fa mach_msg + 50 
2 CoreFoundation     0x378043ec __CFRunLoopServiceMachPort + 120 
3 CoreFoundation     0x37803124 __CFRunLoopRun + 876 
4 CoreFoundation     0x3778649e CFRunLoopRunSpecific + 294 
5 CoreFoundation     0x37786366 CFRunLoopRunInMode + 98 
6 WebCore       0x3312fc9c RunWebThread(void*) + 396 
7 libsystem_c.dylib    0x340a572e _pthread_start + 314 
8 libsystem_c.dylib    0x340a55e8 thread_start + 0 

Thread 5 name: com.apple.NSURLConnectionLoader 
Thread 5: 
0 libsystem_kernel.dylib   0x319d7004 mach_msg_trap + 20 
1 libsystem_kernel.dylib   0x319d71fa mach_msg + 50 
2 CoreFoundation     0x378043ec __CFRunLoopServiceMachPort + 120 
3 CoreFoundation     0x37803124 __CFRunLoopRun + 876 
4 CoreFoundation     0x3778649e CFRunLoopRunSpecific + 294 
5 CoreFoundation     0x37786366 CFRunLoopRunInMode + 98 
6 Foundation      0x38016bb2 +[NSURLConnection(Loader) _resourceLoadLoop:] + 302 
7 Foundation      0x38016a7a -[NSThread main] + 66 
8 Foundation      0x380aa58a __NSThread__main__ + 1042 
9 libsystem_c.dylib    0x340a572e _pthread_start + 314 
10 libsystem_c.dylib    0x340a55e8 thread_start + 0 

Thread 6 Crashed: 
0 libsystem_kernel.dylib   0x319e7cd4 __workq_kernreturn + 8 
1 libsystem_c.dylib    0x3409ff36 _pthread_wqthread + 610 
2 libsystem_c.dylib    0x3409fcc8 start_wqthread + 0 

Thread 7: 
0 libsystem_kernel.dylib   0x319e7cd4 __workq_kernreturn + 8 
1 libsystem_c.dylib    0x3409ff36 _pthread_wqthread + 610 
2 libsystem_c.dylib    0x3409fcc8 start_wqthread + 0 

Thread 8: 
0 libsystem_kernel.dylib   0x319e7cd4 __workq_kernreturn + 8 
1 libsystem_c.dylib    0x3409ff36 _pthread_wqthread + 610 
2 libsystem_c.dylib    0x3409fcc8 start_wqthread + 0 

Thread 9 name: com.apple.CFSocket.private 
Thread 9: 
0 libsystem_kernel.dylib   0x319e7570 __select + 20 
1 CoreFoundation     0x3780863a __CFSocketManager + 726 
2 libsystem_c.dylib    0x340a572e _pthread_start + 314 
3 libsystem_c.dylib    0x340a55e8 thread_start + 0 

Thread 6 crashed with ARM Thread State: 
    r0: 0x00000004 r1: 0x00000000  r2: 0x00000000  r3: 0x00000000 
    r4: 0x0c8cc800 r5: 0x0036a08c  r6: 0x04339000  r7: 0x04338fe0 
    r8: 0x3f29fd30 r9: 0x00000000  r10: 0x3f29fd50  r11: 0x00000000 
    ip: 0x00000170 sp: 0x04338fc0  lr: 0x3409ff3d  pc: 0x319e7cd4 
    cpsr: 0x40000010 

:彼らは私たちを送り返す

ログと呼ばれるアプリを自身のいずれかの方法を示していないように見えますか?

UPDATE:

私たちは私たちに、コンソールのトレースを送信するために、アプリのレビューチームをnagged、彼らがやりました。トレースでは、存在しないStringカテゴリメソッドへの呼び出しが行われていることが明らかでした。

特定のカテゴリの実装ファイルがリリースターゲットに追加されていないという不具合がありました。だからすべてが完璧に働いていたが、アプリケーションがアーカイブされたときに実装ファイルが失われていた。

+0

アプリケーションの起動とクラッシュにはどのくらいの時間がかかりますか?あなたが起動のために許可された時間を超えたように見える – Stavash

+0

スプラッシュページから最初の画面に行くのに約1秒(標準のようです)。その後、彼らは "私は周りを見てみましょう"ボタンをクリックして明らかにアプリケーションをクラッシュすることになる。この結論にどうやって来たのですか? – theVurt

+0

例外が何であるかを知るにはちょっと役立つでしょうか。おそらく、クラッシュ時にコンソールログに出力される可能性があります。 – Bryan

答えて

2

ため

リンクは残念ながら、このログは見ていない - それはちょうど別のスレッドから再スローされます例外を処理し、メインスレッドを示しています。そのスレッドは、ログの時に何か他のことをするために消えてしまった。

あなたはRestKitループに関する疑いがあり、NSOperationは例外をスローしています。それは可能であり、チェックインする価値があります(そして何かを壊さないように指を渡します...)が、おそらくアプリレビューチームにあなたに再現のためのより良い措置を講じるよう依頼する時間です。すべてのことが異なっていることを特定できるかどうかを確認してください。私はあなたのためにより良い答えを持っていればいいと思っていますが、私は、アプリのこの部分では、バックグラウンドで何をしているのか、あなたができることをすべて探求し、再現する欠けているステップを見つけ出そうとするのが最善の策になると思う。がんばろう!

1

クラッシュは、アプリがキャッチされなかった例外を発生させた一番上のスナッグラインがあり4

Thread 0 name: Dispatch queue: com.apple.main-thread 
Thread 0: 
0 libsystem_kernel.dylib   0x319e7660 __semwait_signal_nocancel + 24 
1 libsystem_c.dylib    0x3410b4da nanosleep$NOCANCEL + 118 
2 libsystem_c.dylib    0x340dd3a0 usleep$NOCANCEL + 44 
3 libsystem_c.dylib    0x340dd2b6 abort + 118 
4 Snug       0x001f8760 uncaught_exception_handler + 12 
5 CoreFoundation     0x37830950 __handleUncaughtException + 68 
6 libobjc.A.dylib     0x3553533e _objc_terminate + 122 
7 libc++abi.dylib     0x36f683be safe_handler_caller(void (*)()) + 70 
8 libc++abi.dylib     0x36f6844a std::terminate() + 14 
9 libc++abi.dylib     0x36f6981e __cxa_rethrow + 82 
10 libobjc.A.dylib     0x355352a2 objc_exception_rethrow + 6 
11 CoreFoundation     0x37786506 CFRunLoopRunSpecific + 398 
12 CoreFoundation     0x37786366 CFRunLoopRunInMode + 98 
13 GraphicsServices    0x33f45432 GSEventRunModal + 130 
14 UIKit       0x31532cce UIApplicationMain + 1074 
15 Snug       0x000f590c main (main.m:16) 
16 Snug       0x000f58c0 start + 32 

でスレッド0で起こりました。 レポートを記号化するには、xCodeにドラッグするだけです。レビューされたバージョンのdSYMファイルが必要です。次にxCodeは、問題が発生した正確な行を表示します。 dSymを取得するには、「構築してアーカイブする」必要があります。また

クラッシュコードは

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

クラッシュの原因は、メモリアクセスの問題であるからです。このような種類のクラッシュレポートは、多くの場合、配列または辞書に無名オブジェクトをインストールしようとする場合に生成されます。 (クラッシュがメインスレッドにあり、報告されているスレッド6にはないので)

あなたのケースでは私は明らかな挿入は見当たりませんが、メインファイルの16行目以降のすべてのロジックをチェックします。私はあなたがこの呼び出しの時にもう存在しないオブジェクトにアクセスしていると仮定します。

+0

バックグラウンドスレッドでクラッシュが発生しました。これはちょうど例外は再スローされています。 –

+0

これは既にシンボル化されたログです: -/xcodeを記号で表しました。私がappleから得た記号化されていないものは人間が読めるスタックトレースはありません。 @カール・ベイジーあなたはどこで見ることができますか?私はそれを把握することはできません、私はメインスレッドに再スローを参照してくださいとthats。 – theVurt

+0

@theVurt yeah私はこのログがあまりにも役に立たないように見えません:(スレッド6が消えて、メインスレッドが再スローを処理している間に何か他のことをやり始めたように見えます。あなたがデバッグ/アドホックビルドで異なることをしているかどうかを確認してください。 –

0

あなたはリンゴからのクラッシュレポートを分析するために

以下の手順を使用してクラッシュレポートを分析することができます:AppStoreのにプッシュされた

コピーリリースの.appファイル、で作成された.dSYMファイルをリリースの時刻とクラッシュレポートはAPPLEからFOLDERに送られます。

OPEN端末アプリケーションと(CDコマンドを使用して)上記で作成したフォルダ

ATOS -archのARMv7 -o YOU​​RAPP.app/YOURAPP MEMORY_LOCATION_OF_CRASHに行きます。メモリの場所は、レポートごとにアプリがクラッシュした場所でなければなりません。

例:atos -arch armv7 -o 'app name。app '/' app name '0x0003b508

これはクラッシュの原因となった正確な行、メソッド名を表示します。

例:[classname functionName:]; -510

Symbolicating IPA

我々はsymbolicatingのためにIPAを使用する場合 - ちょうど私たちはアプリが含まれているペイロードフォルダを取得することができ、それを抽出し、.zipファイルに拡張子の.ipaの名前を変更します。この場合、.dSYMファイルは必要ありません。あまりにも役立ちますようこのSymbolicating iPhone App Crash Reports

+0

xcodeを使って自分のマシンに保存されている.dSYMのレポートを、私はIPAを提出していません。私はこれがすでに象徴されていたという印象を受けました。 – theVurt

関連する問題