Crash & Error 记录

Crash

Crash收集

  1. 连接设备,Window->devices->View Device Logs
  2. 线上Crash:通过iTunes connect,app资讯页面,有一个【Crash Reports】链接。
  3. 线上:Window->Organizer->上方【Crashs】
  4. iOS设备上保存的Crash,设置->隐私->诊断与用量->诊断与用量数据,这里保存的Crash数据列表。

Exception Type

SIGSEGV 访问了非法的地址(地址还没有从系统映射到当前进程的内存空间), 一般是野指针导致, 而野指针一般由于多线程操作对象导致.

SIGABRT 一般是Exception或者其他的代码主动退出的问题.

SIGTRAP 代码里面触发了调试指令, 该指令可能由编译器提供的trap方法触发, 如'__builtin_trap()'

SIGBUS 一般由于地址对齐问题导致, 单纯的OC代码挺难触发的, 主要是系统库方法或者其他c实现的方法导致

SIGILL 表示执行了非法的cpu指令, 但是一般是由于死循环导致

Error

编译器报错

  1. library not found for -liPhone-lib

    描述:Unity 导出 Xcode 工程编译报错。

    原因:library 编译路径错误。

    解决:Library search paths 中去掉"$(SRCROOT)/Libraries"的引号。

  2. ld: warning: directory not found for option '-F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator10.2.sdk/Developer/Library/Frameworks'

    找不到framework.png

    原因:找不到framework库

    解决:Framework search Paths 中替换为$(PLATFORM_DIR)/Developer/Library/Frameworks

    解决方案.png

  3. ProductName was compiled with optimization - stepping may behave oddly; variables may not be available.

    描述:调试时断点后打印信息。

    原因:release模式下编译会做一些优化,导致单步程序异常,变量不可访问。
    解决:编译方式改为debug。

  4. [NSBundle initWithURL:]: nil URL argument

    描述:运行时崩溃。

    原因:加载不到bundle文件,bundle没有被添加进ipa中,检查文件是否被添加进工程,并且Target MemberShip是否被选上。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • two Last login: Tue Aug 4 17:09:57 on ttys000 yushengyang...
    aofeilin阅读 4,716评论 1 9
  • 首先如果遇到应用卡顿或者因为内存占用过多时一般使用Instruments里的来进行检测。但对于复杂情况可能就需要用...
    攻克乃还_阅读 6,286评论 0 7
  • 静态库与动态库的区别 首先来看什么是库,库(Library)说白了就是一段编译好的二进制代码,加上头文件就可以供别...
    吃瓜群众呀阅读 14,163评论 3 42
  • 思维导图打卡第五天 梳理了一下近期任务
    王雅叶Yvonne阅读 1,630评论 0 0
  • 今天天气很好,有点细细小雨,我们收拾了行李,就出发,目的地,成都,今天是出游第五天,其实才5天,但是感觉出来好...
    压缩水果阅读 3,157评论 5 7

友情链接更多精彩内容