1

iOS アプリが特定の画面でクラッシュします。それは時々起こります。

画面が表示されたとき、または画面を下にスクロールすると、アプリがクラッシュすることがあります。クラッシュレポートは次のとおりです。

Exception Type:  SIGSEGV
Exception Codes: SEGV_ACCERR at 0xe0000010
Crashed Thread:  0

Thread 0 Crashed:
0   libobjc.A.dylib                     0x3958af2a _objc_release + 10
1   CoreFoundation                      0x31637441 __CFAutoreleasePoolPop + 17
2   Foundation                          0x31f5c01d -[NSAutoreleasePool release] + 121
3   UIKit                               0x335437e1 -[UITableView layoutSubviews] + 225
4   UIKit                               0x334ff803 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 259
5   QuartzCore                          0x332a9d8b -[CALayer layoutSublayers] + 215
6   QuartzCore                          0x332a9929 CA::Layer::layout_if_needed(CA::Transaction*) + 461
7   QuartzCore                          0x332aa85d CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 17
8   QuartzCore                          0x332aa243 CA::Context::commit_transaction(CA::Transaction*) + 239
9   QuartzCore                          0x332aa051 CA::Transaction::commit() + 317
10  QuartzCore                          0x332e10f7 CA::Display::DisplayLink::dispatch(unsigned long long, unsigned long long) + 255
11  QuartzCore                          0x332e0ff1 CA::Display::IOMFBDisplayLink::callback(__IOMobileFramebuffer*, unsigned long long, unsigned long long, unsigned long long, void*) + 65
12  IOMobileFramebuffer                 0x35538fd7 IOMobileFramebufferVsyncNotifyFunc + 155
13  IOKit                               0x322db449 _IODispatchCalloutFromCFMessage + 193
14  CoreFoundation                      0x316be5db __CFMachPortPerform + 119
15  CoreFoundation                      0x316c9173 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 35
16  CoreFoundation                      0x316c9117 __CFRunLoopDoSource1 + 139
17  CoreFoundation                      0x316c7f99 __CFRunLoopRun + 1385
18  CoreFoundation                      0x3163aebd _CFRunLoopRunSpecific + 357
19  CoreFoundation                      0x3163ad49 _CFRunLoopRunInMode + 105
20  GraphicsServices                    0x351ed2eb _GSEventRunModal + 75
21  UIKit                               0x33550301 _UIApplicationMain + 1121
22  Numerology                          0x00021313 main (main.m:13)

コードを調べて、考えられる例外の原因を見つけようとしましたが、例外を追跡できません。

お知らせ下さい。

ありがとう

4

1 に答える 1

3

SIGSEGV はセグメンテーション違反です。つまり、無効なメモリ アドレスにアクセスしようとしています。

SIGSEGV は文字通り、所有していないアドレスにアクセスしていることを意味します。したがって、必ずしも解放されたオブジェクトにアクセスしているわけではありません。次のように、存在しなかったオブジェクトにアクセスしている可能性があります。

UIView *myView; // uninitialised, may point to anything
[myView setFrame:someFrame];

または、次のような C レベルのオブジェクト以外のものでエラーを起こすだけでも構いません。

int array[100];
array[1000] = 23; // out-of-bounds access

したがって、コードを慎重に再確認してください。あなたはそのエラーを見つけるかもしれません。

于 2013-05-20T12:04:35.243 に答える