Firebase Crashlytics 近期更新 | 在 Android Studio 中更好地除錯應用

語言: CN / TW / HK

穩定性和效能是每個應用成功的關鍵,在如今充滿競爭的應用市場中,第一印象對應用使用者而言尤為重要。 而在這樣的大環境下,無論您是為 Android 還是 iOS 開發應用或者遊戲,無論您使用 Flutter 構建,還是開發 Unity 遊戲,Firebase Crashlytics 都會助您一臂之力。

在過去幾個月中,Firebase Crashlytics 團隊投入了大量精力來研究如何更便捷地洞悉您應用的崩潰情況和穩定性。在接下來的內容中,我們將為您詳解近期針對 Crashlytics 所做的更新。

針對 Flutter 應用優化的崩潰報告

應用釋出者需要一套全方位的工具套件來構建、釋出和運營應用。Firebase 針對上述的每個階段都提供了對應的跨平臺產品和服務,而 Flutter 支援使用一套程式碼庫開發跨平臺介面。所以很自然 Firebase 的跨平臺服務就成為 Flutter 跨平臺介面框架的補充。我們正專注於使它們的結合能展現出更好的效果,包括作出重大改進以確保 Firebase Crashlytics 支援 Flutter 應用。

  • Flutter

    https://flutter.cn/

首先,我們更新了 Crashlytics Flutter 外掛,以便您可以根據需要鎖定嚴重錯誤 (fatal error),為您提供與原生 iOS 和 Android 開發者相同的一系列功能。這包括重要的警報和指標,例如 "無崩潰使用者" 可幫助您掌握應用的穩定性情況。以下示例程式碼片段展示了自動捕獲 Flutter 框架內所丟擲的所有錯誤:

 void main() async {


WidgetsFlutterBinding.ensureInitialized();


await Firebase.initializeApp();


// 將未捕捉的錯誤從框架傳遞給 Crashlytics


FlutterError.onError = FirebaseCrashlytics.instance.recordFlutterFatalError;


runApp(MyApp());


}

我們還改進了後端分析,現在您的 Flutter 崩潰可以更直觀地按常見的潛在特徵進行分組,從而讓您更快地對問題進行分類並排列優先順序,以修復問題。最後,我們精簡了外掛配置過程,您不再需要開啟任何特定平臺的 IDE。現只需 三個步驟 即可開始使用 Crashlytics 和 Flutter!

  • 三個步驟

    https://firebase.google.cn/docs/crashlytics/get-started?platform=flutter

要利用所有這些更新,請確保您使用的是最新版本的 Crashlytics Flutter 外掛。如果您希望瞭解更多內容,請參閱文件  Firebase Crashlytics 使用入門

https://firebase.google.cn/docs/crashlytics/get-started?platform=flutter

藉助 Android Studio 中 Firebase Crashlytics 的資料分析提高開發者的工作效率

即使有詳細的實時崩潰報告,開發者在問題排查時通常需要在 Crashlytics 資訊中心和 IDE 之間切換以定位錯誤並進行除錯。我們知道這樣的反覆切換有時著實讓人頭疼,因為在瀏覽器中檢視堆疊追蹤然後再切換到程式碼中,並尋找合適的位置設定斷點,整個過程非常繁瑣。所以我們在 Android Studio 中構建了新的 App Quality Insights 視窗。您現在可以在本地 Android Studio 專案的上下文中檢視 Crashlytics 報告,從而更輕鬆地發現、調查和重現問題。新工具還能高亮顯示出現在崩潰報告中的有問題的程式碼行,以便您在處理程式碼時解決問題。

如果您已經在應用中添加了 Firebase 和 Crashlytics,請在 Android Studio 中點選右上方的頭像圖示登入您的開發者帳號。登入後,點選 "App Quality Insights" 工具視窗。您會看到 "Issues"、"Sample Stack Trace" 以及顯示 Crashlytics 報告的 "Details" 面板。如果您碰到任何問題或有任何反饋,歡迎隨時 提交 bug 報告

https://issuetracker.google.com/issues/new?component=192708&template=840533

如果您尚未在應用中使用 Crashlytics,請參閱文件  Firebase Crashlytics 使用入門 :

https://firebase.google.cn/docs/crashlytics/get-started?platform=flutter

通過 Google Play 軌道過濾崩潰

您現在可以直接在 Crashlytics 資訊中心 通過 Google Play 軌道 過濾應用的崩潰報告。此過濾功能使您可以更好地讓資訊中心專注於應用版本特定階段的構建上。

  • Crashlytics 資訊中心

    https://firebase.google.cn/docs/crashlytics/get-deobfuscated-reports?platform=ios
  • Google Play 軌道

    https://developers.google.cn/android-publisher/tracks

△ 在 Crashlytics 資訊中心裡如何按照 Google Play Track 進行過濾

首先,您需要做的是將 Firebase Android 應用關聯到您的 Google Play 開發者帳號

https://firebase.google.cn/docs/crashlytics/integrate-with-google-play

手動上傳 dSYM 檔案

△ Crashlytics 資訊中心內 dSYM 檔案拖放新功能

我們從 iOS 開發者那裡得知一個痛點: 上傳 dSYMs 比較麻煩。我們想簡化該過程。現在 iOS 開發者可以使用 Firebase 控制檯的 "Drag and Drop" 選項手動上傳包含 dSYM 檔案的 Zip 存檔。

如需瞭解更多內容,請在 Firebase 控制檯訪問 Crashlytics dSYMs 標籤 ,歡迎開發者親自嘗試拖放功能。

  • dSYMs 標籤

    https://console.firebase.google.com/project/_/crashlytics

IL2CPP 與 Unity 崩潰處理

我們改進了 Unity 崩潰處理過程。讓我們分別通過 Android 和 iOS 逐一詳解: 

Android

您可以在這裡檢視嚴重崩潰報告。當開發者使用 Crashlytics Unity SDK 8.6.1+,堆疊軌跡看起來更像 C# 堆疊追蹤,並且有一個更智慧的分組策略,可以對 C# 程式碼進行分組。通過在構建時上傳符號資訊,開發者還可以在 Crashlytics 資訊中心檢視原生庫崩潰的符號化堆疊追蹤。如需瞭解更新資訊,歡迎參閱 Crashlytics Unity 入門指南 :

https://firebase.google.cn/docs/crashlytics/get-started?platform=unity#set-up-symbol-uploading

iOS

崩潰資料會在 Firebase 控制檯中自動做可讀化轉換。除確保正在使用最新版 Unity 軟體包外,您無需再進行任何操作。

簡化入門流程

是否不太熟悉 Crashlytics?是否開啟了一個附帶專案並想要新增崩潰報告?或在為您的應用組合新增一個新平臺?

Crashlytics 工程師和開發者關係團隊一直以來都在幕後努力簡化 Crashlytics 入門流程。請檢視 Firebase Crashlytics 入門指南 ,瞭解簡化後的體驗。當您開始向 Crashlytics SDK 傳送崩潰,您將會在 Crashlytics 資訊中心看見這些事件。

  • Firebase Crashlytics 入門指南

    https://firebase.google.cn/docs/crashlytics/get-started

我們還擴充套件了 測試您的 Crashlytics 實施 指南來幫助排查困難的配置問題:

https://firebase.google.cn/docs/crashlytics/test-implementation

總結

我們已經介紹了許多新功能。總結一下,Crashlytics 現在擁有:

  • Flutter 官方支援

  • 在 Android Studio 中的 "Insights" 視窗

  • 與 Google Play 的整合

  • dSYMs 拖放工具

  • 優化後的 Unity 崩潰報告

  • 簡化的入門流程

敬請期待我們的更多改進!

我們非常希望能夠獲得您對過去一年中 Firebase Crashlytics 所有新功能的反饋。如果有任何反饋或問題,歡迎隨時向我們提交。也歡迎您持續關注 "Android 開發者" 和 "谷歌開發者" 官方微信公眾賬號,及時瞭解最新動態。

您可以通過下方二維碼或在文章底部私信,向我們提交反饋,分享您喜歡的內容、發現的問題。您的反饋對我們非常重要,感謝您的支援!

推薦閱讀

如頁面未載入,請重新整理重試

點選屏末   閱讀原文  |   進一步瞭解 Firebase Crashlytics