在物理设备上调试时,仅在 iOS 10 中发生的有趣错误。它不会发生在模拟器中,或者在物理设备上运行时(而不是调试)。在任何情况下,它也不会在 iOS 9 设备上发生……只有 iOS 10 在调试时以及在执行任何 javascript 调用之后。
我有一个用 Swift 2.3 编写的混合网络应用程序,在 xwebview 加载后我调用各种 javascript 方法......实际上,在这种情况下是任何方法。无论如何,在 javascript 方法完成后,我收到一个 malloc 错误,说我正在尝试释放指针。
malloc: *** error for object 0x1740b5060: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
所以我设置了断点......它永远不会在断点处中断,它只是一直告诉我设置一个断点。
如果我删除所有 javascript 调用,则永远不会发生错误。我试过一一启用,没关系,回调返回后它们都会中断。
我已经这样做了大约 2 周,我没有多余的头发可以拔掉。在这一点上,我很想听听其他人是否看到同样的事情。