Crashlytics 不会在 iOS 中发送崩溃数据

问题描述 投票:0回答:1

我正在尝试将 crashlythics 实施到一个用于测试 porpuses 的空项目中,即使我完全遵循官方指南 thisthis one 但我运气不太好,在遵循第二个指南之后我在控制台日志

2022-07-25 17:21:38.157616+0200 crashlythics test[607:149616] 9.4.0 - [FirebaseCore][I-COR000001] Configuring the default app.
2022-07-25 17:21:38.183569+0200 crashlythics test[607:149595] [Firebase/Crashlytics] Version 9.4.0
2022-07-25 17:21:38.183961+0200 crashlythics test[607:149616] 9.4.0 - [FirebaseCrashlytics][I-CLS000000] [Crashlytics] Running on iPhone12,8, 14.0.0 (18A373)
2022-07-25 17:21:38.207022+0200 crashlythics test[607:149616] 9.4.0 - [FirebaseCore][I-COR000033] Data Collection flag is not set.
2022-07-25 17:21:38.208194+0200 crashlythics test[607:149617] 9.4.0 - [FirebaseCrashlytics][I-CLS000000] Root: /var/mobile/Containers/Data/Application/98366F06-111E-42DF-9519-A1E5D2CA50E9/Library/Caches/com.crashlytics.data/D.Pashkov.crashlythics-test
2022-07-25 17:21:38.211229+0200 crashlythics test[607:149615] 9.4.0 - [FirebaseCrashlytics][I-CLS000000] [Crashlytics:Crash:Reports:Event] Firebase Analytics SDK not detected. Crash-free statistics and breadcrumbs will not be reported
2022-07-25 17:21:38.211277+0200 crashlythics test[607:149615] 9.4.0 - [FirebaseCrashlytics][I-CLS000000] Automatic data collection is enabled.
2022-07-25 17:21:38.211403+0200 crashlythics test[607:149615] 9.4.0 - [FirebaseCrashlytics][I-CLS000000] Unsent reports will be uploaded at startup
Fatal error: Crash was triggered: file crashlythics_test/ContentView.swift, line 13
2022-07-25 17:21:58.490175+0200 crashlythics test[607:149595] Fatal error: Crash was triggered: file crashlythics_test/ContentView.swift, line 13
(lldb) 

我不确定是否需要视图中的代码,因为它是一个空项目,但以防万一我会在这里复制它:

crashlythics_testApp.swift:

import SwiftUI
import FirebaseCore

class AppDelegate: NSObject, UIApplicationDelegate {
  func application(_ application: UIApplication,
                   didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {
    FirebaseApp.configure()

    return true
  }
}

@main
struct crashlythics_testApp: App {
    @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}

ContentView.swift:

import SwiftUI

struct ContentView: View {
    var body: some View {
        Button("Crash") {
          fatalError("Crash was triggered")
        }
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}
ios firebase swiftui crashlytics
1个回答
2
投票

日志表明 Crashlytics SDK 已正确安装和初始化。

测试时,请确保您遵循此处提到的步骤。特别是说要停止 Xcode 的部分。这些是步骤:

  1. 从 Xcode 运行应用程序
  2. 在设备/模拟器中运行后,在Xcode中点击“停止”
  3. 然后在设备中打开app导致测试崩溃
  4. 再次从 Xcode 运行应用程序

在此之后,调试日志应该是这样的:

9.3.0 - [FirebaseCrashlytics][I-CLS000000] [Firebase/Crashlytics] Packaged report with id '5caa69396c6f47479add349810a604bc' for submission
9.3.0 - [FirebaseCrashlytics][I-CLS000000] Submitting report async
9.3.0 - [FirebaseCrashlytics][I-CLS000000] Completed report submission with id: 5caa69396c6f47479add349810a604bc

这些步骤是必需的,因为 Xcode 附加了一个调试器,阻止 Crashlytics 获取崩溃数据。

© www.soinside.com 2019 - 2024. All rights reserved.