ios - 如何在 UIDictationController 中调试此崩溃?

标签 ios ios6 crash-reports ipad-mini

最近我正在尝试使用崩溃报告提供的信息进行调试。到目前为止,我已经能够识别并修复一些错误,但不是这个。

正如我从崩溃报告中读到的那样,UIDictationController 有问题,但我的代码根本没有调用 UIDictationController。崩溃报告由 PLCrashReporter 生成.

用户似乎使用的是 iPad Mini (WiFi) 并运行 iOS 6.0.2。

Incident Identifier: [REMOVED]
CrashReporter Key:   [REMOVED]
Hardware Model:      iPad2,5
Process:         MyApp [2849]
Path:            [REMOVED]
Identifier:      com.yourcompany.MyApp
Version:         1.1
Code Type:       ARM
Parent Process:  launchd [1]

Date/Time:       2013-01-26 02:11:01 +0000
OS Version:      iPhone OS 6.0.2 (10A550)
Report Version:  104

Exception Type:  SIGABRT
Exception Codes: #0 at 0x32255350
Crashed Thread:  0

Application Specific Information:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSArrayM insertObject:atIndex:]: object cannot be nil'

Last Exception Backtrace:
0   CoreFoundation                      0x3882e2a3 __exceptionPreprocess + 163
1   libobjc.A.dylib                     0x30d8897f objc_exception_throw + 31
2   CoreFoundation                      0x387788d9 -[__NSArrayM insertObject:atIndex:] + 769
3   UIKit                               0x36ad24c3 -[UIDictationMeterView initWithFrame:] + 267
4   UIKit                               0x36abe699 -[UIDictationView initWithFrame:] + 281
5   UIKit                               0x36abdcd1 +[UIDictationView sharedInstance] + 145
6   UIKit                               0x36aae7f5 -[UIDictationController setState:] + 149
7   UIKit                               0x36aaef5f -[UIDictationController setupForDictationStart] + 199
8   UIKit                               0x36aae5d7 -[UIDictationController startConnectionForReason:] + 51
9   UIKit                               0x36aaf173 -[UIDictationController startDictationFromLayout] + 55
10  UIKit                               0x36825c09 -[UIKeyboardLayoutStar touchUp:] + 5249
11  UIKit                               0x3682472f -[UIKeyboardLayout touchesEnded:withEvent:] + 387
12  UIKit                               0x3670c5f1 -[UIWindow _sendTouchesForEvent:] + 525
13  UIKit                               0x366f9801 -[UIApplication sendEvent:] + 381
14  UIKit                               0x366f911b _UIApplicationHandleEvent + 6155
15  GraphicsServices                    0x3771e5a3 _PurpleEventCallback + 591
16  GraphicsServices                    0x3771e1d3 PurpleEventCallback + 35
17  CoreFoundation                      0x38803173 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 35
18  CoreFoundation                      0x38803117 __CFRunLoopDoSource1 + 139
19  CoreFoundation                      0x38801f99 __CFRunLoopRun + 1385
20  CoreFoundation                      0x38774ebd CFRunLoopRunSpecific + 357
21  CoreFoundation                      0x38774d49 CFRunLoopRunInMode + 105
22  GraphicsServices                    0x3771d2eb GSEventRunModal + 75
23  UIKit                               0x3674d2f9 UIApplicationMain + 1121
24  MyApp                               0x000032e1 main (main.m:36)
25  MyApp                               0x00003230 start + 40


Thread 0 Crashed:
0   libsystem_kernel.dylib              0x30f10350 __pthread_kill + 8
1   libsystem_c.dylib                   0x304f8973 abort + 95
2   MyApp                               0x000e954f uncaught_exception_handler + 27
3   CoreFoundation                      0x3882e57f __handleUncaughtException + 615
4   libobjc.A.dylib                     0x30d88a65 _objc_terminate() + 129
5   libc++abi.dylib                     0x3719807b safe_handler_caller(void (*)()) + 79
6   libc++abi.dylib                     0x37198114 std::terminate() + 20
7   libc++abi.dylib                     0x37199599 __cxa_current_exception_type + 1
8   libobjc.A.dylib                     0x30d889d1 objc_exception_rethrow + 13
9   CoreFoundation                      0x38774f21 CFRunLoopRunSpecific + 457
10  CoreFoundation                      0x38774d49 CFRunLoopRunInMode + 105
11  GraphicsServices                    0x3771d2eb GSEventRunModal + 75
12  UIKit                               0x3674d2f9 UIApplicationMain + 1121
13  MyApp                               0x000032e1 main (main.m:36)

有什么办法可以解决这个错误吗?或者,至少可以缓解这个问题?提前致谢。

最佳答案

问题是在您的应用程序中的某个地方出现了键盘,并且在 iOS 版本 6.0.1 和 6.0.2 中,苹果启用了听写 Controller ,即使您没有指定启用它也是如此。修复它的两种解决方案:创建一个没有它的自定义键盘或在您的应用程序中实现听写。

我的建议是顺其自然,只影响两个过时的 iOS 版本,希望随着用户升级他们的设备,崩溃会消失

关于ios - 如何在 UIDictationController 中调试此崩溃?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14627623/

相关文章:

ipad - 尽管我的应用程序是为iPhone开发的,但仍在iPad上进行了测试

ios - Swift:检测非字母数字字符的正则表达式

iphone - 以编程方式打开设置 iOS 6

ios - 如果不运行使用它的应用程序,可以在 iPad 上看到 Core Data 吗?

ios - 在 TextField 中放置 PlaceHolder

linux - 这些数据是随机的还是有意义的?

ios - 崩溃报告 - iOS - 与 View Controller 相关?

ios - Xcode - Gmail 用于从左向右滑动到下一个上一个邮件项目的过渡是什么

ios - 尝试创建具有预定义图像的结构实例。不确定结构或实例代码是否关闭

ios - 将格式化文本写入文件 iphone