應用崩潰了?Android vitals 幫您精確診斷

Android_開發者發表於2018-10-17

應用崩潰了?Android vitals 幫您精確診斷
辛苦開發的應用終於順利在 Play Store 上線了? 恭喜!—— 但您的開發工作還沒有結束。

您的應用是如何被使用的?您的使用者面臨哪些問題?那個光鮮亮麗的按鈕是否能夠正確對點選做出響應?您的應用啟動速度是否足以讓使用者滿意?最重要的是,您如何判斷您的應用在真實使用者裝置上的使用效果?

如果您想確保您的應用在競爭激烈的 Play Store 中取得成功,就一定要關注並解決這些問題。在本文中,我們將通過檢測和修復應用崩潰來了解 Android vitals 如何在此過程中提供幫助,以便提升應用品質並提供令人愉悅的使用者體驗。

Google Play 一直都在提供大量的工具,以幫助 Android 開發者構建優質應用,擴大使用者群並創造收入。構建高質量的成功應用需要時間,需要付出很多努力。考慮到這一點,我們在 Play Console 中新增了 Android vitals,以提供與應用穩定性和效能相關的關鍵指標資料。利用這些資料,開發者可以準確瞭解到需要在哪方面集中精力才能提升應用品質。

為何要關注效能表現?

這已經不是什麼祕密了:優異的應用效能表現會帶來更高的應用評分,進而帶來更高的安裝次數。使用者會關注 Play Store 中的應用評論和評分。如果應用效能表現差勁,使用者可不會裝作沒看見。使用者不需要太多考慮,就可以放棄或完全刪除效能不佳的應用,因為 Play Store 為他們提供了太多選擇。事實上,Google 和 AppDynamics 的獨立報導已經指出,表現不佳的應用會被更早地被使用者刪掉,並且會收到差評。要在 Play Store 中茁壯成長,開發者必須確保他們的應用擁有高品質,並提供最佳體驗。

Google I/O ’18 針對提升效能表現來獲得成功的演講: www.youtube.com/watch?v=dx6…

AppDynamics:80% 的應用解除安裝源自糟糕的效能表現: blog.appdynamics.com/news/delete…

對於付費應用和遊戲而言,效能表現更為重要。使用者要求他們的買到的東西必須物有所值。效能在很大程度上推動了這些應用的成功,以及開發者能夠獲得的收入。對於遊戲來說,使用者對不良應用行為的容忍度更低 —— 包括崩潰、電池快速耗盡和響應時間過慢

構建具有出色效能的應用的重要性,無論如何強調都不過分。

應用崩潰了?Android vitals 幫您精確診斷

Android vitals 幫您洞察問題所在

在應用上線後追蹤應用效能是一項艱鉅的任務。然而,Android vitals 會讓這個過程舉重若輕。Android vitals 會針對性地收集並彙總使用者的資料,為開發者帶來無與倫比的洞察力,從而瞭解他們的應用在使用者裝置上的表現。

*請注意,Android vitals 僅能收集已開啟 Usage & Diagnostics 共享功能的使用者的資料。

Android vitals 會收集以下類別的資料和報告:

  • 穩定性:Android vitals 會報告應用無響應 (ANR) 現象和崩潰率。當應用的 UI 執行緒長時間被阻塞時會發生 ANR。使用者可以選擇在 ANR 發生時退出或等待。另外再次強調一下,崩潰是由於未處理的異常而引發的,所以對穩定性相關的資料和報告解讀十分重要。
  • 電量:移動裝置的電量是有限的,因此應該謹慎管理應用消耗的電量。大量使用 CPU 的應用會快速耗盡電池電量。在這個問題上,喚醒鎖定、喚醒,以及網路使用情況都會被* 記錄。喚醒鎖定、喚醒和過多的網路使用都會較為明顯地消耗電量。
  • 啟動時間:使用者希望應用載入起來要快一些。載入時間過長的應用會被視為沒有響應,從而破壞使用者體驗。 Android vitals 提供的各種啟動狀態的資訊:包括冷啟動、暖啟動和熱啟動。
  • 渲染時間:平滑的使用者互動 (每秒 60 幀) 是我們的目標。Vitals 會報告需要較長時間渲染的應用以及出現了凍結幀的應用 (渲染時間大於 700 毫秒)。
  • 許可許可權:為了保護使用者,Android 要求應用在進行任何敏感操作之前獲取使用者的許可。使用者現在可以在執行時允許或拒絕許可權請求。Android vitals 會提供有關許可權拒絕的資訊。

詳細瞭解每個指標: support.google.com/googleplay/…

Android vitals 和其他工具比較起來如何?

Android vitals 提供與其他第三方工具類似的功能。然而它在下面幾個方面是獨一無二的。

第一個關鍵區別在於, Android vitals 不需要額外設定即可工作。您無需嚮應用中新增任何程式碼 —— 一個變數都不需要。您所需要的只是使用者選擇共享使用和診斷資訊。您也不需要專門的帳戶來進行管理。Android vitals 可從 Google Play Console 訪問,而 Play Console 正是您日常用來管理您應用的地方。

第二點比較微妙 —— 在使用者看到使用者介面之前,應用就可能已經崩潰了。第三方工具幾乎無法檢測到這些崩潰,因為崩潰報告庫可能在崩潰發生時尚未完成初始化。然而 Android vitals 會捕獲並報告這些崩潰。此外,Android vitals 允許開發者將其應用的每個指標與其他應用進行比較。另外,當開發者的應用與同類別中其他應用的關鍵效能指標出現顯著落差時,開發者也會收到通知,從而助力開發者第一時間解決問題。

即使您使用其他崩潰報告工具,也應該同時使用 Android vitals 來快速識別和修復應用中的效能瓶頸。

調查與診斷應用崩潰

想要檢視 Android vitals 資訊中心,請從 Google Play Console 中選擇您的應用。從左側選單中選擇 Android vitals,然後選擇 Overview。

Overview 頁面在頂部顯示核心 vitals 指標 (崩潰、過度喚醒、ANR、部分喚醒鎖定阻塞)。我們發現,這些指標對應用效能表現較為重要。 Overview 頁面上提供了有關所有指標的資訊,並提供了過濾功能。您可以通過單擊 View Details 深入瞭解任意指標。

值得注意的是,Android vitals 僅在收集到足夠的資料時才會顯示此資訊。所以有些應用不會顯示任何統計資訊。這可能是因為使用者沒有共享使用和診斷資訊,或者是應用暫時還未出現會影響到效能關鍵指標的行為。

應用崩潰了?Android vitals 幫您精確診斷

確定崩潰點

所有的崩潰都不太一樣。有些容易捕獲,有些很難確定。不過,一旦確定崩潰的來源,除錯就變得容易多了。

應用崩潰和 ANR 在 Android vitals 選單下有一個專門的分割槽。要檢視實時崩潰資訊,請在 ANRs & Crashes 下選擇 CRASHES。應用崩潰以群集形式顯示,其中顯示了報告和受影響使用者的數量。您還可以根據 Android 版本、時間段、應用版本和應用安裝源過濾資料。

應用崩潰了?Android vitals 幫您精確診斷
選擇相關的崩潰群集即可深入研究被報告出的崩潰現象。這裡會有詳細檢視顯示出來供您檢視。在這個頁面中,您可以檢視發生的異常型別、報告數量以及每次崩潰的受影響使用者。您還可以獲得應用版本、Android 版本以及發生崩潰的裝置列表的統計資訊。一個很棒的功能是,您可以檢視有關裝置型別的一些基本資訊 (例如 RAM),從而對崩潰原因有更深入的瞭解。

應用崩潰了?Android vitals 幫您精確診斷
在頁面底部,您可以訪問崩潰日誌。日誌揭示了異常所屬的型別,以及它在應用內的根源。這應該可以讓您大概瞭解到一些可能的解決方案。如果發生的是很簡單的崩潰現象,這可能意味著您只需把一小部分程式碼移入 try-catch 塊,正如上圖中所展示出的那樣。當然,您也可能不是每次都能這麼順利地解決崩潰問題,但我們相信詳盡的報告會對您頗有助益。

接下來如何處理?

應用崩潰沒有一定的解決方案。但是在處理應用崩潰時,以下方案可能會派上用場:

  • 使用像 Firebase Crashlytics 這樣優秀的崩潰報告工具以及 Android vitals,更深入地瞭解應用崩潰現象。
  • 試試 Kotlin。Kotlin 受到 Android 的官方支援,可與 Java 實現完全的互操作。Kotlin 的輸入輔助等功能有助於消除 NullPointerExceptions,這是許多開發者頭痛的根源。如今許多流行的應用都是使用 Kotlin 構建的,包括 Slack 和 Camera360 等。
  • 使用 Android Jetpack。Jetpack 為 Android 開發者提供了一系列元件,可以快速構建高品質的強大應用。這些元件能夠確保開發者遵循最佳實踐,並減少應用中出錯的可能性。
  • 閱讀有關 Android 效能表現最佳實踐和指南文件。雖然這可能無法直接幫助修復崩潰,但您將獲得有關如何避免崩潰和提高應用效能的專家提示。

Android 效能表現最佳實踐和指南文件: developer.android.google.cn/topic/perfo…

小結

正如我們所見,應用效能和穩定性對於在 Play Store 中取得成功至關重要。Android vitals 可以幫助您以最小的努力和成本實現這一目標。今後我們還會推出更多的功能,讓您可以更輕鬆地提升應用效能表現 。

如果您從未檢查過應用的 vitals 資訊,請前往您的 Play Console,瞭解應用的確切表現以及您錯過的所有警告,並利用這些資訊來改善您下一步的決策。眾所周知,如果您的 vitals 指標出了問題,您的使用者最需要的是針對性的緊急修復,而不是在使用者介面上做無用文章。

我們期待著您使用 Android vitals 迅速且穩健地提升應用效能表現,並因此收穫使用者們的讚譽和喜愛。

點選這裡瞭解 Android vitals 的更多資訊

應用崩潰了?Android vitals 幫您精確診斷

訪問開發者官方中文網站,快速入門 Android 開發!

相關文章