为了SDK接口更加清晰明了,避免使用中的困惑,我们重新梳理调整了Bugly SDK中的接口,请旧版本(< 2.0)用户参照此指引进行升级。
- 导入头文件
#import <Bugly/CrashReporter.h>改为
#import <Bugly/Bugly.h>- 初始化SDK
[[CrashReporter sharedInstance] installWithAppkey:@"BUGLY_APP_ID"];改为
[Bugly startWithAppId:@"BUGLY_APP_ID"];如需要配合Extension的使用,需要设置App Group Identifier 的,采用以下方式
[[CrashReporter sharedInstance] installWithAppkey:@"BUGLY_APP_ID"
applicationGroupIdentifier:@"APP_GROUP_ID"];改为
BuglyConfig *config = [[BuglyConfig alloc] init];
config.applicationGroupIdentifier = @"APP_GROUP_ID";
[Bugly startWithAppId:@"BUGLY_APP_ID" config:config];在新版本(2.0 +) Bugly接口中,所有的功能开关均在 BuglyConfig 中设置,请在初始化 Bugly 前先自定义 BuglyConfig
BuglyConfig *config = [[BuglyConfig alloc] init];
// 自定义config
// 如:config.unexpectedTerminatingDetectionEnable = YES;
[Bugly startWithAppId:@"BUGLY_APP_ID" config:config];- 非正常退出事件(SIGKILL)
[[CrashReporter sharedInstance] enableUnexpectedTerminatingDetection:YES];改为
config.unexpectedTerminatingDetectionEnable = YES;- 卡顿监控
[[CrashReporter sharedInstance] enableBlockMonitor:YES];改为
config.blockMonitorEnable = YES;- 开启SDK日志
[[CrashReporter sharedInstance] enableLog:YES];改为
config.debugMode = YES;- App Transport Security ( 上报是否采用 HTTPS )
[[CrashReporter sharedInstance] enableAppTransportSecurity:YES];改为
config.appTransportSecurityEnable = YES;- App Transport Security ( 上报是否采用 HTTPS )
[[CrashReporter sharedInstance] enableAppTransportSecurity:YES];改为
config.appTransportSecurityEnable = YES;- 进程内还原符号
[[CrashReporter sharedInstance] setEnableSymbolicateInProcess:YES];改为
config.symbolicateInProcessEnable = YES;在新版本(2.0 +) Bugly接口中,部分自定义数据在 BuglyConfig 中设置,请在初始化 Bugly 前先自定义 BuglyConfig。
- 渠道标识
[[CrashReporter sharedInstance] setChannel:@"AppStore"];改为
config.channel = @"AppStore";- 自定义版本号
[[CrashReporter sharedInstance] setBundleVer:@"1.0"];改为
config.version = @"1.0";- 设备标识
[[CrashReporter sharedInstance] setDeviceId:@"DEVICE_ID"];改为
config.deviceId = @"DEVICE_ID";- 卡顿阀值
*注意:旧接口中单位为毫秒(ms),默认值3000ms,新接口中单位为秒(s),默认值3s
[[CrashReporter sharedInstance] setBlockMonitorJudgementLoopTimeout:1000];改为
config.blockMonitorTimeout = 1.0;- 上报自定义KeyValue数据
[[CrashReporter sharedInstance] setUserData:@"Test Key" value:@"Test Value"];改为
[Bugly setUserValue:@"Test Value" forKey:@"Test Key"];- 设置Tag
[[CrashReporter sharedInstance] setSceneTag:1];改为
[Bugly setTag:1];- 设置用户标识
[[CrashReporter sharedInstance] setUserId:@"USER_ID"];改为
[Bugly setUserIdentifier:@"USER_ID"];- 主动上报异常
NSException *exception = [NSException exceptionWithName:@"NAME"
reason:@"REASON"
userInfo:@{@"KEY":@"VALUE"}];
[[CrashReporter sharedInstance] reportException:exception
reason:@"INFO"
extraInfo:@{@"KEY":@"VALUE"}];改为
NSException *exception = [NSException exceptionWithName:@"NAME"
reason:@"REASON"
userInfo:@{@"KEY":@"VALUE"}];
[Bugly reportException:exception];