iOS开发 - message sent to deallocated instance 崩溃 解决方案

开发环境(Xcode 7.2)

一、说明

(只适用于电脑模拟器)

  1. 在做iOS开发过程中,有时候我们会遇到崩溃,并且提示类似这样的提示 :


  2. 有时候我们会毫无头绪排查,这时候如果我们想要获取更多详细的信息那么可以用终端里的malloc_history命令来解决。

二、解决步骤

**1. **使用模拟器运行项目,并且记住项目名比如:zhihuiyun
**2. **记录崩溃的内存地址比如:0x27659700
3. 打开活动监视器,找出你项目的pid,并且记录下来.
4. 打开你的 终端 terminal 。
5. 输入命令:sudo malloc_history 8813 0x27659700
(8813:为进程pid 0x27659700:为崩溃内存地址)
**6. **获取内存对应错误信息,这时候错误信息显示比较乱,我们可以把信息复制到文本编辑软件里面,进行简单格式化一下.


**7. **这个就是方法堆栈调用的顺序,可以根具堆栈信息,结合错误提示,来进一步解决问题。
iOS开发 - message sent to deallocated instance 崩溃 解决方案_第1张图片

二、问题:

**如果大家遇到提示:
The target process has no stack logs. Run it with the MallocStackLogging env
那么可以设置下:mallocstacklogging 为YES


iOS开发 - message sent to deallocated instance 崩溃 解决方案_第2张图片

然后重新进行步骤
调试完,记得关闭对号

欢迎大家补充。

你可能感兴趣的:(iOS开发 - message sent to deallocated instance 崩溃 解决方案)