EXC_BAD_ACCESS KERN_INVALID ADDRESS iOS9设备崩溃

时间:2017-09-27 16:04:28

标签: ios swift ios9

我一直试图追踪应用程序崩溃,无论我做什么,我都无法清除它。崩溃只发生在iOS9设备上,但我无法重现它。我得到的报告是:

gl = gl + 10;
g.setAttribute("style", "left: "+ gl +"px");

Crashed: com.apple.main-thread
0  libobjc.A.dylib                0x20fdba66 objc_msgSend + 5
1  Foundation                     0x2205d6df __NSThreadPerformPerform + 386
2  CoreFoundation                 0x217f5dff 
__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 14
3  CoreFoundation                 0x217f5981 __CFRunLoopDoSources0 + 344
4  CoreFoundation                 0x217f3d5b __CFRunLoopRun + 794
5  CoreFoundation                 0x21743229 CFRunLoopRunSpecific + 520
6  CoreFoundation                 0x21743015 CFRunLoopRunInMode + 108
7  GraphicsServices               0x22d33ac9 GSEventRunModal + 160
8  UIKit                          0x25e17189 UIApplicationMain + 144
9  MyApp                          0x63cd0 main (GameViewController.swift:18)
10 libdispatch.dylib              0x213eb873 (Missing)

一切都很神秘!代码中没有runInMode(),我通过连接到字符串来处理脚本中唯一的可变数组。我试过用仪器进行分析,没有出现任何东西。

什么可能导致这种只在iOS9上间歇性发生的崩溃?

1 个答案:

答案 0 :(得分:0)

通常当我遇到只发生在早期操作系统版本的崩溃时,这是因为我使用的是后来的OS版本中引入的东西。我的第一个检查是看你是否正在使用可能在9.0之后添加的东西,记住可以在9.1,9.2等中添加的内容。在你的测试中,使用字面上的9.0模拟器,或更高的9。 x模拟器?使用9.0测试以确保,因为这将立即测试这种可能性。