如何使用 Firebase Crashlytics 跟踪 React Native 致命和非致命崩溃

Posted

技术标签:

【中文标题】如何使用 Firebase Crashlytics 跟踪 React Native 致命和非致命崩溃【英文标题】:How to track React Native fatal and non-fatal crashes with Firebase Crashlytics 【发布时间】:2020-04-24 14:43:58 【问题描述】:

我想知道如何捕获我的 React Native 应用程序崩溃(在发布模式下)并将其发送到 firebase crashlytics 仪表板

我找不到如何捕获 致命 崩溃。 但我有代码示例,它可以帮助我捕捉 非致命 崩溃并将其发送到 Firebase Crashlytics 仪表板。

const sendReport = async (error,errorInfo) => 
    await Promise.all([
        crashlytics().setAttribute("Additional_Information", errorInfo),
    ]);
    crashlytics().log(errorInfo);
    crashlytics().recordError(error);
;

// At first i placed my code into TRY and CATCH block
try
 //some code which has error
catch (error) 
  sendReport(error,"information about place of crash")


//I have the example with Network requests
fetch(url)
    .catch((error) => 
       sendReport(error,url)
       // i am sending url for know from which url i am getting the error
    )

我的问题是这些

我需要在任何地方使用 TRYCATCH(e) 块来跟踪 非致命崩溃 ??? 我如何跟踪致命崩溃? 我怎样才能使仪表板崩溃人类可读?例如 对于 android,它给了我“index.android.bundle:502:784” 对于 ios,它给了我“index.bundle:30378:18 line 30378” 这就是为什么我要发送崩溃的附加信息 了解有关坠机地点的信息

【问题讨论】:

您是否尝试过阅读这些说明? npmjs.com/package/@react-native-firebase/crashlytics 没错。我已经做了。我不明白你的问题。对不起。如果你能更好地理解它,请解释我 【参考方案1】:

Crashlytics 应该为您执行此操作。它会捕获导致应用程序崩溃的致命崩溃并报告它们(只要为该构建启用报告)。您无需执行任何操作即可捕获致命崩溃,假设 Crashlytics 在您的应用周围有一个“包装器”。

【讨论】:

以上是关于如何使用 Firebase Crashlytics 跟踪 React Native 致命和非致命崩溃的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Fabric Crashlytics 迁移到 Firebase Crashlytics?

如何在 Firebase Crashlytics 中查看崩溃的详细信息?

如何将映射文件上传到 Firebase Crashlytics?

如何将我的应用与 Firebase Crashlytics 集成?依赖问题

在 Xamarin iOS 中使用 Firebase Crashlytics

如何使用 Firebase Crashlytics 跟踪 React Native 致命和非致命崩溃