iOS 崩溃,EXC_BREAKPOINT,Xcode 6.1 没有线索
Posted
技术标签:
【中文标题】iOS 崩溃,EXC_BREAKPOINT,Xcode 6.1 没有线索【英文标题】:iOS crash, EXC_BREAKPOINT, No clue with Xcode 6.1 【发布时间】:2014-12-21 18:58:19 【问题描述】:我通常能够解决崩溃问题,但在这里我不知道它是从哪里来的。
我使用解析,我只是在后台执行一个带有完成块的请求。 该应用程序在一个简单的 if 条件下崩溃,我几乎无法识别任何东西,无法打印描述,... 你有什么主意吗 ?一个起点?任何事物 ? Xcode 6.1真的很奇怪,调试器好像有bug。
这是崩溃的日志:
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x000000019657a964 __kill + 8
1 MyAPP 0x00000001001f2b70 0x10009c000 + 1403760
2 libsystem_platform.dylib 0x0000000196610958 _sigtramp + 64
3 MyAPP 0x00000001001318cc 0x10009c000 + 612556
4 MyAPP 0x000000010013797c 0x10009c000 + 637308
5 MyAPP 0x0000000100135fc4 0x10009c000 + 630724
6 MyAPP 0x00000001002e408c 0x10009c000 + 2392204
7 MyAPP 0x00000001001dbf78 0x10009c000 + 1310584
8 libdispatch.dylib 0x00000001964393a8 _dispatch_call_block_and_release + 20
9 libdispatch.dylib 0x0000000196439368 _dispatch_client_callout + 12
10 libdispatch.dylib 0x000000019643d97c _dispatch_main_queue_callback_4CF + 928
11 CoreFoundation 0x000000018566d69c __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 8
12 CoreFoundation 0x000000018566b744 __CFRunLoopRun + 1488
13 CoreFoundation 0x00000001855991f0 CFRunLoopRunSpecific + 392
14 GraphicsServices 0x000000018e7275a0 GSEventRunModal + 164
15 UIKit 0x0000000189eca780 UIApplicationMain + 1484
16 Shuff 0x0000000100129474 0x10009c000 + 578676
17 libdyld.dylib 0x0000000196462a04 start + 0
这是一个 ios 代码示例:
var query = PFQuery(className: "_User")
query.whereKey("facebookId", containedIn: ids)
query.findObjectsInBackgroundWithBlock()
results, error in
if var resultsvar = results?
self.functionToCall(resultsvar)
functionToCall 崩溃了。
也许这会有所帮助:
0 0x00000001001679c8 特化 Swift._ArrayBuffer._nonNative.getter : Swift.Optional [inlined] ()
【问题讨论】:
你有一个通用的“catch all”异常断点吗? blog.manbolo.com/2012/01/23/xcode-tips-1-break-on-exceptions 没有。我添加了一个错误。我可以通过在块中移动我的函数代码来获得它。 是的,但它不适用于 Xcode 6.1、swift 项目和 Bolt SDK。感谢您的意见!!!! 我在 Xcode 6.1 中遇到了同样的问题。你找到解决办法了吗? 【参考方案1】:是的!调试器工作不正常!通过执行以下操作,我能够找到正确的行:在您认为应用程序崩溃的开头放置一个断点,逐步进行,记住您经历过的最低行。即使调试器在另一条线路上崩溃,您要查找的线路也可能是最低的线路。
【讨论】:
【参考方案2】:这只是一个猜测,但我正在研究类似的东西,我认为您需要将此代码更改为:
query.findObjectsInBackgroundWithBlock()
results?, error? in
if var resultsvar = results
self.functionToCall(resultsvar)
请注意,我将结果和错误都设为可选。在我的例子中,我提供了一个在 Obj-C 中定义的块,而在 Obj-C 中,这些对象可以合法地 == nil。所以我认为你必须在 Swift 中将它们定义为可选项。
【讨论】:
以上是关于iOS 崩溃,EXC_BREAKPOINT,Xcode 6.1 没有线索的主要内容,如果未能解决你的问题,请参考以下文章
SwiftUI - WKWebView 的 iOS 13 UIViewRepresentable 获取线程 1:EXC_BREAKPOINT 崩溃
SwiftUI - WKWebView 的 iOS 13 UIViewRepresentable 获取线程 1:EXC_BREAKPOINT 崩溃
每次我构建我的应用程序时,iOS 模拟器都会崩溃 EXC_BREAKPOINT(code=EXC_i386_BPT,subcode=0x0)
应用审查小组的 EXC_BREAKPOINT (SIGTRAP)。不可重现