使用KSCrash捕获崩溃日志

https://github.com/kstenerud/KSCrash

#import <KSCrash/KSCrash.h>

实时捕获或者事后上报均支持,这是一个非常成熟稳健的库

static void uploadLog () {
    //可以拿[KSCrash sharedInstance].reportIDs 去遍历获取
    //然后上传完自己去操作删除日志
    //遍历reportIDs
    [KSCrash sharedInstance].reportIDs;
    //取出日志 解析后上报
    NSDictionary *logDict = [[KSCrash sharedInstance] reportWithID:@(666)];
    //上报成功就删除
    [[KSCrash sharedInstance] deleteReportWithID:@(666)];
    [[KSCrash sharedInstance] deleteAllReports];
}


//实时上报
static void customCrashHandler(const KSCrashReportWriter *writer) { 
    uploadLog();
}

- (void)initKSCrash{
    [KSCrash sharedInstance].onCrash = customCrashHandler;
    [KSCrash sharedInstance].deleteBehaviorAfterSendAll = KSCDeleteNever;
    [[KSCrash sharedInstance] install];
    //事后上报... 崩溃之后重新打开app
    uploadLog();
}

posted @ 2024-12-30 22:47  CoderWGB  阅读(96)  评论(0)    收藏  举报