手动集成

Bugtags SDK 全部版本均采用 HTTPS 协议进行网络传输,完全符合 Apple ATS 安全标准,请放心使用。

注意:

  • SDK 最低兼容 iOS 6.0;
  • 请勿与其他带有崩溃分析的 SDK 同时使用,否则将有可能影响崩溃捕捉功能的正常使用;
  • 集成有问题,请查看集成视频,查看 FAQ,或者进入 QQ 群:126207501;
  • App 在联机 Debug 状态下,SDK 默认不自动上报闪退,如需上报,请手动设置 BugtagsOptions -> trackingCrashes 参数
  • 使用说明请参阅产品说明文档

步骤:

  1. 下载 SDK 压缩包 并解压缩
  2. Bugtags.frameworkBugtags.bundle 文件夹拖到 Xcode 项目中
  3. 在应用的设置中,Build Phases -> Link Binary With Libraries 里添加以下 frameworkslibraries
     UIKit            AVFoundation    Foundation        SystemConfiguration
     QuartzCore        CoreLocation    ImageIO            Security    CFNetwork    libc++.tbd
    
  4. 重要! 在应用对应 target 的设置中,Build Settings -> Linking 项下的 Other Linker Flags 中添加 -ObjC(如果已有,则不需要再添加)注意 O,C 大写 Other Linker Flags 添加 -ObjC 导致编译出错?
  5. AppDelegate.m 中导入头文件

    #import <Bugtags/Bugtags.h>
    

    如果是 Swift 项目,请在对应的 bridging-header.h 中导入

  6. 在项目 AppDelegate 的 application didFinishLaunchingWithOptions 方法中初始化 Bugtags(请不要在异步线程中调用)

    Objective-C

     - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    
         [Bugtags startWithAppKey:@"APP_KEY" invocationEvent:BTGInvocationEventBubble];
         return YES;
     }
    

    Swift 3

     func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    
         Bugtags.start(withAppKey: "APP_KEY", invocationEvent: BTGInvocationEventBubble)
         return true
     }
    

    Swift 2

     func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    
         Bugtags.startWithAppKey("APP_KEY", invocationEvent: BTGInvocationEventBubble)
         return true
     }
    

    尽量将初始化 Bugtags 的代码放在 application didFinishLaunchingWithOptions 方法中的第一行

  7. 如果你需要自定义 Bugtags 的功能,可以向 Bugtags 的初始化方法中传入 BugtagsOptions 参数:

    Objective-C

     - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    
         BugtagsOptions *options = [[BugtagsOptions alloc] init];
         options.trackingUserSteps = YES; // 具体可设置的属性请查看 Bugtags.h
         [Bugtags startWithAppKey:@"APP_KEY" invocationEvent:BTGInvocationEventBubble options:options];
         return YES;
     }
    

    Swift 3

     func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    
         let options = BugtagsOptions()
         options.trackingUserSteps = true // 具体可设置的属性请查看 Bugtags.h
         Bugtags.start(withAppKey: "APP_KEY", invocationEvent: BTGInvocationEventBubble, options: options)
         return true
     }
    

    Swift 2

     func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    
         let options = BugtagsOptions()
         options.trackingUserSteps = true // 具体可设置的属性请查看 Bugtags.h
         Bugtags.startWithAppKey("APP_KEY", invocationEvent: BTGInvocationEventBubble, options: options)
         return true
     }
    

    尽量将初始化 Bugtags 的代码放在 application didFinishLaunchingWithOptions 方法中的第一行

编译运行 App,将会在 App 中看到一个小球,成功了!看不到悬浮球? 想隐藏悬浮球?

参考资源:

评论