iOS Bug 调试

1.打印log调试

#ifdef DEBUG

# define DLog(fmt, ...) NSLog((@"[文件名:%s]\n""[函数名:%s]\n""[行号:%d] \n"fmt), __FILE__, __FUNCTION__, __LINE__, ##__VA_ARGS__);

#else

# define DLog(...);

#endif

2.断言一般用于BUg调试

  int a=10;

  int b =0;

  NSAssert(b,@"B不等于0");

   NSAssert(str !=nil,@"字符串不能为空"); 

3.断点调试

    a.文件行断点。执行到特定文件的木一行时触发,可以控制台 po打印查看对象数值

    b.符号断点。调用某一函数或方法时触发。相同函数或方法时,都调用。

          Symbol Breakpoint OC,C,C++方法,函数都会触发断点。C,C++函数只需要写函数名。

    c.异常断点。产生异常时触发。

         Exception Breakpoint 当程序抛出异常的时候会触发断点。部分错误会断点在发生错误的代码。数组 越界等会崩溃到main.m,不能定位到具体的代码,使用Exception Breakpoint就能定位到具体的代码。

条件断点:

4.收集Logs 分析crash日志

    View Device Logs 查看收集日志;



5.集成腾讯的Bugly收集bug日志,后台可查看



参考:https://www.jianshu.com/p/43964f1bb80f

            https://edu.csdn.net/course/play/916/13102

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。