我在iOS应用中使用Bugsense,但是当我遇到SIGABRT或类似的崩溃时,我在Xcode中的输出控制台仅显示Bugsense数据而不显示错误,因此,每次调试时,都必须禁用Bugsense才能看到它。这是我的输出控制台的示例:
启用Bugsense:
2013-05-29 12:01:45.887 [44604:1303] BugSense --> Posting analytics data...
2013-05-29 12:01:45.949 [44604:c07] GoogleAnalytics 2.0b4 -[GAIDispatcher internalCreateTimer] (GAIDispatcher.m:195) DEBUG: Created timer to fire every 20.0s
2013-05-29 12:01:46.464 [44604:4b03] BugSense --> Server responded with status code: 200
当我启动应用程序时会出现此消息,但在崩溃时控制台输出上没有任何显示
关闭Bugsense:
*** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 0 beyond bounds for empty array'
*** First throw call stack:
(0x21e5012 0x1dc6e7e 0x21870b4 0x2009d 0x290d8 0x11a5b87 0x11a5c14 0xe0d249 0xe0d4ed 0x18175b3 0x21a4376 0x21a3e06 0x218ba82 0x218af44 0x218ae1b 0x2bdc7e3 0x2bdc668 0xd5dffc 0x254d 0x2475 0x1)
libc++abi.dylib: terminate called throwing an exception
我真的不知道为什么启用错误检测会隐藏异常。
最佳答案
Bugsense会在调试器看到所有异常之前捕获所有异常。通常,您只应为提供给他人进行测试或部署的构建启用这种框架。对于调试,您不需要任何东西来隐藏您的错误。
关于ios - XCode控制台输出中的Bugsense隐藏异常,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16817492/