簡體   English   中英

如何使用 Fabric SDK 在 Swift iOS 應用程序中強制崩潰?

[英]How do I force a crash in Swift iOS app with Fabric SDK?

我能找到的是有沒有一種快速的方法來強制崩潰? 其中說:

[[Crashlytics sharedInstance] crash];

我認為在 Swift 中會是

Crashlytics.sharedInstance.crash()

但這似乎並不存在。 (也許文檔已經過時並且不再適用,因為 Fabric 吞噬了 Crashlytics?)

我看到有一個 Crashlytics.crash(self:Crashlytics) ......沒關系,我的 XCode 的完成總是壞的。 請參閱下面的答案。

如果您使用的是新的Firebase Crashlytics SDK,請注意import Crashlytics已被import FirebaseCrashlytics取代。 crash()方法在新 SDK 中不再可用。 按照 Firebase 的建議,只需使用:

迅速:

fatalError()

對象 C:

assert(NO);

(如果它位於 AppDelegate 以外的文件中,則需要import Crashlytics ,然后執行Crashlytics.sharedInstance().crash()

在 firebase 中創建項目和應用程序

如果您有現有的 firebase 項目或創建 firebase 項目並在 firebase 控制台中創建新的應用程序,請在 firebase 控制台中添加一個新的 iOS 應用程序。

將 Firebase 添加到 iOS 應用

首先,在第 1 步中,通過在將 iOS 應用程序創建到 firebase 時添加包標識符來注冊您的應用程序。 在第 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 mode 設置為 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
}

強制崩潰以測試實現:在撰寫本文時,我有一個視圖控制器,在視圖控制器中間有一個名為(單擊以崩潰應用程序)的按鈕。 出於測試目的,當用戶單擊按鈕時,應用程序崩潰。

並查看控制器下面的代碼並在模擬器或設備中運行一次並檢查 Firebase 儀表板。您會找到所有崩潰報告。

    import UIKit
    import Crashlytics

class ViewController: UIViewController { var name:String! 變量編號:整數!

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。

在此處輸入圖片說明 在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM