我的iOS应用程序使用Crashlytics和几种方案来区分发布版本和开发版本。
我想Crashlytics中的崩溃报告包括发布和开发版本中的所有报告。 我可以按计划切换Crashlytics报告吗?
答案 0 :(得分:1)
使用此预处理器宏,您可以轻松识别您的应用程序何时处于一个或多个方案中,
#if DEBUG
debugPrint("Debug")
#else
debugPrint("Release")
#endif
您可以查看此答案,了解有关Conditional Compilation - Check Scheme
的更多信息然后您可以通过示例
添加具有Scheme键的DEBUG值的自定义键 #if DEBUG
Crashlytics.sharedInstance().setObjectValue("DEBUG", forKey: "Scheme")
#else
Crashlytics.sharedInstance().setObjectValue("RELEASE", forKey: "Scheme")
#endif
如果您将该代码放在Application didFinishLaunchingWithOptions
方法中,那么DEBUG中的所有崩溃报告都将在“Scheme”键中显示值“DEBUG”
<强> FullCode 强>
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
Fabric.sharedSDK().debug = true
Fabric.with([Crashlytics.self,Answers.self])
#if DEBUG
Crashlytics.sharedInstance().setObjectValue("DEBUG", forKey: "Scheme")
#else
Crashlytics.sharedInstance().setObjectValue("RELEASE", forKey: "Scheme")
#endif
return true
}
然后在Fabric页面中,您将能够在崩溃报告中看到它,选择所有会话
在键中使用按键切换按钮后,您可以将Scheme视为键,此时的值为 DEBUG