我所能找到的只是Is there a quick way to force a crash?,它说:
[[Crashlytics sharedInstance] crash];
我认为在Swift中会是
Crashlytics.sharedInstance.crash()
但这似乎不存在。 (也许文档已经过时,不再适用,因为Fabric吞噬了Crashlytics?)
我看到有一个Crashlytics.crash(自我:Crashlytics)......没关系,friggin XCode的完成总是为我打破。见下面的答案。
答案 0 :(得分:22)
如果您使用的是新的Firebase Crashlytics SDK,请注意import Crashlytics
已被import FirebaseCrashlytics
取代。 crash()
方法在新的SDK中不再可用。根据Firebase的建议,只需使用:
迅速:
fatalError()
Obj C:
assert(NO);
答案 1 :(得分:12)
(如果它位于AppDelegate以外的文件中,则需要import Crashlytics
,然后执行Crashlytics.sharedInstance().crash()
答案 2 :(得分:1)
在Firebase中创建项目和应用
如果您有现有的Firebase项目或创建firebase项目并在firebase控制台中创建新应用,请在firebase控制台中添加新的iOS应用。
将Firebase添加到iOS应用
首先,在第1步中,通过在Firebase中创建iOS应用时添加捆绑标识符来注册您的应用。在第2步中,下载配置文件GoogleService-Info.plist如下图所示将其添加到您的工作区中。
通过CocoaPods添加Crashlytics SDK
要开始使用,请将Crashlytics SDK框架文件添加到您的项目中。对于大多数项目,最简单的方法是添加Crashlytics CocoaPods。
pod 'Firebase/Core'
pod 'Fabric', '~> 1.7.2'
pod 'Crashlytics', '~> 3.9.3'
测试您的实施
启用Crashlytics调试模式:为了在调试模式下启用crashlytics,我们需要在AppDelegate.swift中将Fabric.sharedSDK()。debug模式设置为true。
import UIKit
import Firebase
import Crashlytics
import Fabric
@UIApplicationMain AppDelegate类:UIResponder,UIApplicationDelegate {
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
FirebaseApp.configure()
Fabric.sharedSDK().debug = true
return true
}
强制崩溃以测试实现:在撰写本文时,我在viewController的中间有一个视图控制器,其中一个按钮名为(Click to crash app)。出于测试目的,当用户单击按钮应用程序时崩溃了。
然后使用以下代码查看控制器,并在模拟器或设备中运行一次,然后在Firebase仪表板中检查。您会找到所有崩溃报告。
import UIKit
import Crashlytics
ViewController类:UIViewController { var名称:字符串! var number:Int!
override func viewDidLoad() {
super.viewDidLoad()
name = "12"
}
@IBAction func crashBtnAction(_ sender: Any) {
//creshreportMethod()
print("name of the value",name)
var myDict = [String:Any]()
myDict = ["name":number!]
print("my dict value",myDict)
}
}
如果您的构建在启动时附加了调试器,则Crashlytics无法捕获崩溃。调整构建设置以更改项目的调试信息格式:
在Xcode Navigator中仍选择项目的情况下,打开Build Settings选项卡。 单击选项卡顶部的全部以显示所有构建设置。 搜索“调试信息格式”。 使用dSYM文件将“调试信息格式”设置设置为DWARF。