iOS崩溃日志crash logs追踪以及调试方法
2013-05-02 11:37
405 查看
from:http://blog.csdn.net/dqjyong/article/details/7817315
#if DEBUG
#define debuglog(format, ...) NSLog(format, __VA_ARGS__)
#else
#define debuglog(format, ...)
#endif
2,打开project-->Build setting选项,在下面找LLVM GCC4.2-preprocessing下面的-preprocessor macros 下一级 Debug中设置DEBUG=1 。
这样我们就可以做到log调试信息在release时不会输出,更好的提高应用性能。
如何编写高质量的代码可以参见Ensuring High Quality and Optimal Performance 。
在IOS程序开发和以及在真机运行程序时,经常会遇到程序crash的情况,从哪里可以获得crash的日志文件,以便更好的分析程序崩溃的原因,让应用更加完美。
在真机运行程序出现crash状况时,机器会自动产生log文件,它包含了在程序crash之前正在做什么的信息。在pc上对手机或者ipad设备进行同步,就可以将这些日志文件存储在电脑中。下面时如何找到这些日志文件:1.同步你的移动设备;2.浏览下面的文件夹,这里假设在iTunes中你的设备显示名称为DEVICE_NAME。那么日志文件的路径为:Mac OS X : ~/Library/Logs/CrashReporter/MobileDevice/<DEVICE_NAME> Windows XP: C:\Documents and Settings\\Application Data\Apple computer\Logs\CrashReporter\\ Windows Vista: C:\Users\\AppData\Roaming\Apple computer\Logs\CrashReporter\MobileDevice\\3.每个日志文件都是以应用的名称开头。你可以将日志文件打包给开发者,以便开发者及时改进程序。如何debug程序参见iphone参考文档Debugging Deployed iOS Apps。 而在开发程序过程也会出现程序crash的情况,那么这时生成的文件目录为:
~/Library/Logs/DiagnosticReports/在该目录下有以.crash扩展名后缀的文件。除了上面在出现崩溃后的查找crash的原因,而在程序编写调试的过程经常用到的调试手法为NSLog方法,打印出出错信息。但是,在iPhone 应用发布后,程序运行过程中尽量不要有调试 log 信息输出,因为这样会影响程序运行的效率。因此可以通过宏定义设置,使程序只在 debug 模式下输出对我们有用的信息, release 时不会输出。 具体步骤如下:1、首先建立一个宏定义文件,文件内容如下:
#if DEBUG
#define debuglog(format, ...) NSLog(format, __VA_ARGS__)
#else
#define debuglog(format, ...)
#endif
2,打开project-->Build setting选项,在下面找LLVM GCC4.2-preprocessing下面的-preprocessor macros 下一级 Debug中设置DEBUG=1 。
这样我们就可以做到log调试信息在release时不会输出,更好的提高应用性能。
如何编写高质量的代码可以参见Ensuring High Quality and Optimal Performance 。
相关文章推荐
- iOS崩溃日志crash logs追踪以及调试方法
- iOS崩溃日志crash logs追踪以及调试方法
- iOS调试——关于insertRowsAtIndexPaths方法崩溃以及动画实效的处理办法
- iOS常见崩溃情况以及bug调试解决方法
- iOS常见崩溃情况以及bug调试解决方法
- [iOS]Xcode4/iOS5调试UncaughtException崩溃First throw call stack不打印方法名的解决方案
- IOS 崩溃日志调试
- [iOS]Xcode4/iOS5调试UncaughtException崩溃First throw call stack不打印方法名的解决方案
- iOS Xcode 自带crash 崩溃问题的追踪方法
- iOS 几种常用的 crash log 崩溃信息调试方法
- 查看iOS Crash logs的方法(程序崩溃)
- 12.iOS格式化日志输出的方法以及在发布状态自动关闭NSLog方法
- iOS开发Xcode崩溃在main函数入口时如何定位Bug的一个小方法以及一个恶心的bug介绍
- Xcode:iOS崩溃日志分析方法
- 获取iOS设备上崩溃日志(Crash Log)的方法
- 获取iOS设备上崩溃日志(Crash Log)的方法
- 安装xcode6 beta 后调试出现Unable to boot the iOS Simulator以及编译苹果官方Swift的demo报错failed with exit code 1的解决的方法
- Ios自定义日志打印以及捕捉崩溃日志并存入文件
- 获取iOS 设备上崩溃日志 (Crash Log)的方法
- iOS crash 崩溃问题的追踪方法