ios - SIGSEGV SEGV_ACCERR 错误 - 未引用应用程序的方法

标签 ios objective-c crash segmentation-fault

此崩溃报告中没有引用我的应用程序的任何方法,我也无法重现它。我的几个用户遇到了同样的崩溃。我找不到任何带有 ScrollView 的表格 View 单元格或我使用 Spring 的任何地方。这次崩溃可能来自哪里?

Incident Identifier: 748D4582-3868-42BD-BF98-B3B47895954D
CrashReporter Key:   F7F44964-E877-4C7A-881C-91EBC4261080
Hardware Model:      iPhone5,1
Process:         MyApp [2415]
Path:            /Users/USER/MyApp.app/MyApp
Identifier:      com.mycom.myapp
Version:         1.5.1
Code Type:       ARM
Parent Process:  launchd [1]

Date/Time:       2013-11-21 05:30:47 +0000
OS Version:      iPhone OS 7.0.4 (11B554a)
Report Version:  104

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

Thread 0 Crashed:
0   libobjc.A.dylib                      0x3921fb66 objc_msgSend + 5
1   UIKit                                0x3177e315 -[UITableView _createPreparedCellForGlobalRow:withIndexPath:] + 409
2   UIKit                                0x317266cd -[UITableView _updateVisibleCellsNow:] + 1800
3   UIKit                                0x31719f75 -[UITableView _visibleCells] + 24
4   UIKit                                0x31783f13 -[UITableView indexPathForCell:] + 26
5   UIKit                                0x31782289 -[UITableViewCell _canDoSeparatorLayout] + 64
6   UIKit                                0x31781e19 -[UITableViewCell _updateSeparatorContent] + 56
7   UIKit                                0x31844a3b -[UITableViewCell _updateViewsForDeleteButton] + 218
8   UIKit                                0x3171c673 -[UITableViewCellScrollView setContentOffset:] + 186
9   UIKit                                0x31880561 __43-[UITableViewCell _animateSwipeCancelation]_block_invoke + 81
10  UIKit                                0x31681113 +[UIView _setupAnimationWithDuration:delay:view:options:factory:animations:start:animationStateGenerator:completion:] + 490
11  UIKit                                0x317a66ef +[UIView _animateUsing WithDuration:delay:options:mass:stiffness:damping:initialVelocity:animations:start:completion:] + 166
12  UIKit                                0x317a663f +[UIView _animateUsingSpringWithDuration:delay:options:mass:stiffness:damping:initialVelocity:animations:completion:] + 90
13  UIKit                                0x318804bf -[UITableViewCell _animateSwipeCancelation] + 278
14  UIKit                                0x31850639 -[UITableView _endSwipeToDeleteRowDidDelete:] + 216
15  UIKit                                0x31901873 -[UITableView willMoveToSuperview:] + 62
16  UIKit                                0x318e1913 __UIViewWillBeRemovedFromSuperview + 151
17  UIKit                                0x3164a091 -[UIView removeFromSuperview] + 56
18  UIKit                                0x3171e431 -[UIScrollView removeFromSuperview] + 64
19  UIKit                                0x3164c9b3 -[UIView dealloc] + 366
20  libobjc.A.dylib                      0x39221023 (anonymous namespace)::AutoreleasePoolPage::pop(void*) + 359
21  CoreFoundation                       0x2edfb1c9 _CFAutoreleasePoolPop + 16
22  CoreFoundation                       0x2ee90e83 __CFRunLoopRun + 1315
23  CoreFoundation                       0x2edfb471 CFRunLoopRunSpecific + 524
24  CoreFoundation                       0x2edfb253 CFRunLoopRunInMode + 106
25  GraphicsServices                     0x33b352eb GSEventRunModal + 138
26  UIKit                                0x316b0845 UIApplicationMain + 1136
27  MyApp                          0x000e810b main (main.m:5)
28  libdyld.dylib                        0x3971dab7 start + 3

Thread 1:
0   libsystem_kernel.dylib               0x397c1838 kevent64 + 24
1   libdispatch.dylib                    0x3970a623 _dispatch_mgr_thread + 39

Thread 2:
0   libsystem_kernel.dylib               0x397d4c7c __workq_kernreturn + 8
1   libsystem_pthread.dylib              0x39838cc4 start_wqthread + 8

Thread 3:
0   libsystem_kernel.dylib               0x397d4c7c __workq_kernreturn + 8
1   libsystem_pthread.dylib              0x39838cc4 start_wqthread + 8

Thread 4:
0   libsystem_kernel.dylib               0x397d4c7c __workq_kernreturn + 8
1   libsystem_pthread.dylib              0x39838cc4 start_wqthread + 8

Thread 5:
0   libsystem_kernel.dylib               0x397c1a84 mach_msg_trap + 20
1   CoreFoundation                       0x2ee92559 __CFRunLoopServiceMachPort + 157
2   CoreFoundation                       0x2ee90c79 __CFRunLoopRun + 793
3   CoreFoundation                       0x2edfb471 CFRunLoopRunSpecific + 524
4   CoreFoundation                       0x2ee3f0db CFRunLoopRun + 98
5   CoreMotion                           0x2f4b3369 CLSF_thorntonUpdate_6x6 + 57225
6   libsystem_pthread.dylib              0x3983ac5d _pthread_body + 141
7   libsystem_pthread.dylib              0x3983abcf _pthread_start + 102
8   libsystem_pthread.dylib              0x39838cd0 thread_start + 8

Thread 0 crashed with ARM Thread State:
    pc: 0x3921fb66     r7: 0x27d21618     sp: 0x27d215f4     r0: 0x17f82270 
    r1: 0x31c343d7     r2: 0x189d9e00     r3: 0x17d46730     r4: 0x189d9e00 
    r5: 0x00000338     r6: 0x17e0e340     r8: 0x39e43294     r9: 0x50000000 
   r10: 0x17d46730    r11: 0x000001d0     ip: 0x39d3e220     lr: 0x3177e315 
  cpsr: 0x20000030 

最佳答案

这是我在查看崩溃报告时看到的内容:

  1. 崩溃是由 objc_msgSend 中的 SIGSEGV 引起的。这意味着该应用程序正在尝试向无效的对象发送消息。这意味着您的应用程序(某处)至少存在一个内存问题。

  2. 问题似乎发生在尝试使用滑动删除手势删除 tableView 中的行时,请参阅 -[UITableView _endSwipeToDeleteRowDidDelete:] 显示在堆栈跟踪和其他上面的提示如 -[UITableViewCell _animateSwipeCancelation]-[UITableViewCell _updateViewsForDeleteButton]

因此可能值得尝试在您应用的所有表格 View 中检查此用例。

此外,使用 Xcode 的 Analyze 功能并修复它显示的所有警告,并尝试在设置了 Enable Zombie Objects 的情况下运行您的应用程序。有很多网站和关于 SO 的答案在这里解释了如何做到这一点。

关于ios - SIGSEGV SEGV_ACCERR 错误 - 未引用应用程序的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20244029/

相关文章:

objective-c - 什么时候调用 initWithCoder?

ios - 按下按钮时应用程序崩溃; iOS模拟

iphone - 呈现模型 View 时Xcode崩溃

android - 我的应用程序在启动时崩溃(java.lang.RuntimeException : Unable to get provider)

ios - 像使用 UIBarButtonItem 一样给 UIImage 着色

ios - 我应该在执行后将 block 引用设置为 nil 吗?

ios - 中心的 GMSMarker 图标 (iOS)

ios - SceneKit自定义几何纹理错误

iphone - RestKit mapKeyPath 到数组索引

ios - 为 Swift/Obj-c 项目运行 XCTest 时出错(错误 83)