iOS SDK API

初始化 Bugtags

BTGInvocationEvent 调用模式枚举

BTGInvocationEventNone    // 静默模式,只收集 Crash 信息(如果允许,默认为允许)

BTGInvocationEventShake   // 通过摇一摇呼出 Bugtags

BTGInvocationEventBubble  // 通过悬浮小球呼出 Bugtags

设置自定义选项初始化

Objective-C

BugtagsOptions *options = [[BugtagsOptions alloc] init];
options.trackingCrashes = YES;        // 是否收集闪退,联机 Debug 状态下默认 NO,其它情况默认 YES
options.trackingUserSteps = YES;      // 是否跟踪用户操作步骤,默认 YES
options.trackingConsoleLog = YES;     // 是否收集控制台日志,默认 YES
options.trackingUserLocation = YES;   // 是否获取位置,默认 YES

// 是否跟踪网络请求,只跟踪 HTTP / HTTPS 请求,默认 NO
// 强烈建议同时设置 trackingNetworkURLFilter 对需要跟踪的网络请求进行过滤
options.trackingNetwork = YES;

// 设置需要跟踪的网络请求 URL,多个地址用 | 隔开,
// 支持正则表达式,不设置则跟踪所有请求
// 强烈建议设置为应用服务器接口的域名,如果接口是通过 IP 地址访问,则设置为 IP 地址
// 如:设置为 bugtags.com,则网络请求跟踪只对 URL 中包含 bugtags.com 的请求有效
options.trackingNetworkURLFilter = @"yourdomain.com";

options.crashWithScreenshot = YES;    // 收集闪退是否附带截图,默认 YES
options.ignorePIPESignalCrash = YES;  // 是否忽略 PIPE Signal (SIGPIPE) 闪退,默认 NO
options.version = @"1.0.10";          // 自定义版本名称,默认自动获取应用的版本号
options.build = @"10";                // 自定义 build,默认自动获取应用的 build
[Bugtags startWithAppKey:@"APP_KEY" invocationEvent:BTGInvocationEventBubble options:options];

通过默认选项初始化

[Bugtags startWithAppKey:@"APP_KEY" invocationEvent:BTGInvocationEventBubble];

Swift

let options = BugtagsOptions()
options.trackingCrashes = true        // 是否收集闪退,联机 Debug 状态下默认 false,其它情况默认 true
options.trackingUserSteps = true      // 是否跟踪用户操作步骤,默认 true
options.trackingConsoleLog = true     // 是否收集控制台日志,默认 true
options.trackingUserLocation = true   // 是否获取位置,默认 true

// 是否跟踪网络请求,只跟踪 HTTP / HTTPS 请求,默认 NO
// 强烈建议同时设置 trackingNetworkURLFilter 对需要跟踪的网络请求进行过滤
options.trackingNetwork = true

// 设置需要跟踪的网络请求 URL,多个地址用 | 隔开,
// 支持正则表达式,不设置则跟踪所有请求
// 强烈建议设置为应用服务器接口的域名,如果接口是通过 IP 地址访问,则设置为 IP 地址
// 如:设置为 bugtags.com,则网络请求跟踪只对 URL 中包含 bugtags.com 的请求有效
options.trackingNetworkURLFilter = "yourdomain.com"

options.crashWithScreenshot = true    // 收集闪退是否附带截图,默认 true
options.ignorePIPESignalCrash = true  // 是否忽略 PIPE Signal (SIGPIPE) 闪退,默认 false
options.version = "1.0.10"            // 自定义版本名称,默认自动获取应用的版本号
options.build = "10"                  // 自定义 build,默认自动获取应用的 build

// Swift 3
Bugtags.start(withAppKey: "APP_KEY", invocationEvent: BTGInvocationEventBubble, options: options)

// Swift 2
Bugtags.startWithAppKey("APP_KEY", invocationEvent: BTGInvocationEventBubble, options: options)

也可使用默认配置启动:

// Swift 3
Bugtags.start(withAppKey: "APP_KEY", invocationEvent: BTGInvocationEventBubble)

// Swift 2
Bugtags.startWithAppKey("APP_KEY", invocationEvent: BTGInvocationEventBubble)

手动调用截屏界面

可在运行期任意阶段,调用此 API 进行截屏;主要用于需要自定义截屏触发机制的情况。

Objective-C

[Bugtags invoke];

Swift

Bugtags.invoke()

发送文字反馈信息

可用于实现用户反馈功能,详情请参阅文档

Objective-C

[Bugtags sendFeedback:@"user-feedback"];

Swift

Bugtags.sendFeedback("user-feedback")

手动发送 Exception

可以把捕获到的 Exception 传到 Bugtags 后台。

Objective-C

[Bugtags sendException:exception];

Swift 3

Bugtags.send(exception)

Swift 2

Bugtags.sendException(exception)

Bugtags 日志

可用于记录日志,详情请参阅文档

Objective-C

BTGLog(@"%@", @"your-log");

[Bugtags log:@"your-log"];

Swift

Bugtags.log("your-log");

设置 key value 数据

可设置一些用于调试的 key value 数据,随着问题一起上报到 bugtags 云平台,详情请参阅文档

Objective-C

[Bugtags setUserData:@"value" forKey:@"key"];

Swift

Bugtags.setUserData("value", forKey: "key")

还有对应的 remove 一个 key 和 remove 所有 key 的操作:

Objective-C

[Bugtags removeUserDataForKey:@"key"];
[Bugtags removeAllUserData];

Swift

Bugtags.removeUserDataForKey("key")
Bugtags.removeAllUserData()

设置 Bugtags 所处的呼出模式

可用于运行时改变 Bugtags 所处呼出模式。

Objective-C

[Bugtags setInvocationEvent:BTGInvocationEventBubble];

Swift

Bugtags.setInvocationEvent(BTGInvocationEventBubble)

获取 Bugtags 当前所处的呼出模式

Objective-C

[Bugtags currentInvocationEvent];

Swift

Bugtags.currentInvocationEvent()

设置问题提交之前的回调

Objective-C

[Bugtags setBeforeSendingCallback:cb];

Swift

Bugtags.setBeforeSendingCallback(cb)

设置问题提交成功后的回调

Objective-C

[Bugtags setAfterSendingCallback:cb];

Swift

Bugtags.setAfterSendingCallback(cb)

设置是否只允许在 Wifi 下上传数据,默认为 NO

Objective-C

[Bugtags setUploadDataOnlyViaWiFi:onlyViaWiFi];

Swift

Bugtags.setUploadDataOnlyViaWiFi(onlyViaWiFi)

其它 API

/**
 * 设置是否收集 Crash 信息
 * @param trackingCrashes - 默认 YES
 * @return none
 */
+ (void)setTrackingCrashes:(BOOL)trackingCrashes;

/**
 * 设置是否跟踪用户操作步骤
 * @param trackingUserSteps - 默认 YES
 * @return none
 */
+ (void)setTrackingUserSteps:(BOOL)trackingUserSteps;

/**
 * 设置是否收集控制台日志
 * @param trackingConsoleLog - 默认 YES
 * @return none
 */
+ (void)setTrackingConsoleLog:(BOOL)trackingConsoleLog;

/**
* 设置是否收集用户位置信息
* @param trackingUserLocation
* @return none
*/
+ (void)setTrackingUserLocation:(BOOL)trackingUserLocation;

/**
 *  设置是否跟踪网络请求,只跟踪 HTTP / HTTPS 请求
 *  强烈建议同时设置 trackingNetworkURLFilter 对需要跟踪的网络请求进行过滤
 *  @param trackingNetwork - 默认 NO
 *  @return none
 */
+ (void)setTrackingNetwork:(BOOL)trackingNetwork;
评论