1、崩溃日志的记录工具Crashlytics
集成过程:
把crashlytics相关的FrameWork拖到工程
--->在AppDelegate中导入头文件 #import <Crashlytics/Crashlytics.h>
---->在(Bool)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
[Crashlytics startWithAPIKey:@"your indentify code"];
}
制造崩溃测试:
[[Crashlytics shareInstance] crash];
[NSObject doesNotRecognizeSelector];
[arrayOnlyTwoElements objectAtIndex:3];
实现原理:
1、在应用启动时调用其SDK,根据你设置的APPKey,完成crash信息的收集和上传.
2、修改功能的编译配置,每次工程编译完成后,上传该工程对应的dSYM文件.只有通过该文件才能将crash日志还原成可读的callStack信息.
2、Xcode自带的一个分析工具symbolicatecrash
step1:在终端敲命令查找symbolicatecrash所在的路径
find /Applications/Xcode.app -name symbolicatecrash -type f
step2:从Xcode Archive的二进制文件中找到.dSYM文件和.app文件拷贝到刚才创建的 "CrashReport" 文件夹里面.
step3:打开终端进入CrashReport文件夹,依次输入以下命令行:
cd /Users/username/Desktop/CrashReport
export DEVELOPER_DIR=/Applications/XCode.app/Contents/Developer
./symbolicatecrash ./*.crash ./*.app.dSYM > symbol.crash
这时候终端将会进行处理......处理结果是生成一个新的文件symbol.crash。然后打开这个文件。
你就会看到日志跟我们调试APP的控制台输出的内容一样了!
网友评论