我是SDK开发人员,现在我只想在我的SDK中收集崩溃。但是当崩溃发生时,可能是由集成了我的SDK的应用程序引起的。我该怎么办是过滤那些。
我首先想到的是集成第三方库,例如KSCrash。但是问题是KSCrash是AppDelegate.m中的init,并且有效的所有APP生命都包含SDK。所以我不知道如何集成它仅在我的SDK中?
任何可以帮助我的人
答案 0 :(得分:0)
这很难实现,因为崩溃发生在流程级别,而不是您的框架具有自己独立的“节”或子流程。
您可以采取一些变通办法来过滤SDK崩溃日志,使用以下代码块可以捕获SDK中的崩溃日志。
- (void)application:(UIApplication *)application finishedLaunchingWithOptions (NSDictionary *)launchOptions{
NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler);
}
void uncaughtExceptionHandler(NSException *exception) {
//get the log from exception
}
,然后您必须使用下面的代码块从应用程序AppDelegate finishLaunchingWithOptions注册此ExceptionHandler
[YourSDK_Instance application:application finishedLaunchingWithOptions:launchOptions];