OkCredit 是一款信用帳戶管理應用程式,供印度數百萬名商店業主和消費者使用。光是每月進行 1.4 億筆交易,且下載次數超過 5,000 萬次,光是去年,OkCredit 在應用程式中記錄了價值 $500 億美元的交易。
OkCredit 用於 OkCredit 用於營運的規模,以及數百萬間仰賴自家應用程式管理帳戶的企業,因此無論使用的裝置為何,OkCredit 確保所有使用者都能享有流暢且流暢的體驗。
系統會給予使用者好評並給予好評,讓效能一流的應用程式更臻完善。如果應用程式有穩定性或效能問題,通常會讓使用者感到困擾,甚至導致評分不佳。如果您的目標是滿足使用者需求,並持續提供良好的使用者體驗,那麼 ANR (應用程式無回應) 功能就可以讓 ANR (應用程式無回應) 是一項重要的成效指標。
OkCredit 投資改善 Android Vitals 資料,例如減少 ANR 情形、縮短應用程式啟動時間,進而獲得利弊,在低資源 (已資源有限) 的裝置上尤其如此。結果發現顧客留存率和應用程式商家交易量都有所提升。
挑戰
OkCredit 的其中一個主要區隔是低階裝置的使用者。這類裝置在資源有限的情況下執行報稅工作,很容易造成使用者體驗不佳。舉例來說,一項重大維護作業的挑戰是追蹤 ANR 並新增檢測設備。我們的目標是解決這些問題,同時希望能改善整體使用者體驗,並提高商家交易量。
具體做法
藉由減少 ANR 及改善應用程式 (例如 OkCredit) 的應用程式啟動時間,客戶可獲得滿意的顧客,同時提高應用程式的商家交易量。
針對 ANR 進行偵錯最重要的線索,就是找出主要執行緒在 ANR 發生時執行的動作。OkCredit 根據 Google 的意見回饋制定了識別 ANR 的結構化做法。
- 使用 Android Vitals 監控成效,並使用 Firebase Crashlytics 中的自訂報表瞭解 ANR
- 從應用程式啟動開始,最佳化第三方程式庫初始化,將其移至背景執行緒
- 使用 Systrace 和 Profiler 等工具找出廣播接收器和服務中的 ANR。CI 的 Macrobenchmark 也有助於針對冷啟動進行基準測試。
- 透過方法分析器,系統可將物件識別為延遲載入。
- 使用 Perfetto,找出高加載式版面配置。
- 透過在背景執行緒中將所有 apply() 變更為 force(),藉此解決共用偏好設定中的 ANR。
他們會比較指標或使用 Systrace、CPU 分析器等工具,驗證上述工作是否確實影響到這些工作的影響。
成果
除了改善指標和使用者體驗,OkCredit 開發團隊也取得了一些深入分析,以協助他們改善日後的開發流程。
- 在低階裝置上:
- ANR 次數減少 60%
- 第 1 天,低階裝置的顧客留存率提高約 22%
- 每個商家的平均交易次數增加了 30%
- 在 Play 商店中將應用程式評分從 4.3 提高至 4.6
- 冷啟動時間縮短約 70%
- 使用者從任何畫面點擊開始繪製第一個影格後,點閱率提升了 60%
這個練習團隊集結了整個團隊,一起制定最佳做法,鼓勵他們專注提升使用者體驗。團隊在開發期間已開始使用 Perfetto 和 CPU 分析器等工具,藉此增進系統對系統的理解度,並更快做出決策。
「專注於減少 ANR 讓我們提供愉快的體驗,讓我們脫穎而出。因而提高留存率並降低使用者流失率。 此外,由於團隊在工程方面表現卓越,這些做法對機構文化都有深遠的影響。這讓我們相當自豪,這間公司在最近的印度中小企業數位化產業中,制定了新的應用程式效能基準。」
– Gaurav Kunwar (共同創辦人和 CPO - OkCredit)