Xcode:EXC_BREAKPOINT(EXC_ARM_BREAKPOINT,子代码= 0xe7ffdefe)

我在iOS7设备上运行我的应用程序时收到EXC_BREAKPOINT(EXC_ARM_BREAKPOINT,子代码= 0xe7ffdefe)错误。 问题是,它在iOS7模拟器上运行顺畅。

通过使用断点,我发现错误发生在第6行。

required init(coder aDecoder: NSCoder) { personPicker = ABPeoplePickerNavigationController() super.init(coder: aDecoder) personPicker.peoplePickerDelegate = self } /*error line*/ @IBAction func BPressed(sender: AnyObject) { self.presentViewController(personPicker, animated: true, completion: nil) } 

这个错误是新的,直到我将这些行添加到代码中之后才出现在我的设备上;

  let url = NSURL(string: urlPath) let request = NSURLRequest(URL: url!) NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue()) {(response, data, error) in println(NSString(data: data, encoding: NSUTF8StringEncoding)) } 

也; 调试器将错误指向此行:

 0x16a7f0: trap 

并在控制台中提供此输出:

致命错误:尝试从空指针创建Unmanaged实例

即使我在故事板中没有更改任何内容,此错误也会导致设备出现黑屏。

感谢您抽出宝贵时间。

编辑:此错误显示搜索引擎没有结果,但我认为它可能与obj-c有关。

我今天遇到了这个问题,当时测试一些Swift代码对抗旧的iPad 2(我认为它是iPad 2 – 它的型号为MD368LL / A),运行iOS 8.1.3。 事实certificate,我所谓的地方存在的问题是:

 Int(arc4random() % ) 

这适用于以后的iPad,iPhone5S,iPhone6等。通过将代码更改为:

 Int(UInt32(arc4random()) % UInt32()) 

我认为这是旧硬件上的寄存器溢出。

在我的情况下,如果你把一个太大的数字转换成太小的类型,这最终会出现一些溢出问题。 例如Int(someNumber)如果someNumberInt64类型。

iPhone 5c打破了令人讨厌的代码行:

在此处输入图像描述

我在iPhone 5遇到了这个问题,这是iOS 10.3.3

 let date = Date() // Crashes in `iPhone 5`, but works in `iPhone 5s`. let time: Int = 1000 * Int(date.timeIntervalSince1970) //< Crash due to cast `Double` to `Int` // This crashes in `iPhone 5`, and `iPhone 5s` too. let time: Int32 = 1000 * Int32(date.timeIntervalSince1970) // It works fine in `iPhone 5`, and `iPhone 5s`. let time: Int64 = 1000 * Int64(date.timeIntervalSince1970)