アプリのパフォーマンス スコアを取得する

アプリ パフォーマンス スコアを使用して、全体的なパフォーマンス スコアを計算し、改善の機会を特定します。アプリ パフォーマンス スコアは、詳細な技術的なタスクを最小限に抑えながらパフォーマンスを測定するための標準化されたフレームワークです。

エンジニアリング チームとプロダクト チームが特定の Android アプリの技術的パフォーマンスを評価する際の指針になります。評価が完了すると、評価と推奨されるアクションによって、パフォーマンス改善のために最も重要な領域を特定し、優先順位を付けることができます。


はじめに

アプリ パフォーマンス スコアは、アプリ デベロッパーに静的評価と動的評価を提供します。どちらも個別に実施でき、アプリのパフォーマンス動作について独自の分析情報を得ることができます。これらの分析情報には、現状を改善してアプリのパフォーマンスを高めるのに役立つ実用的な最適化案も含まれます。

全体的なパフォーマンスを測定するために、0 ~ 100 のスコアが示されます。値が低いほど、改善の余地が大きくなります。

各項目のスコアと推奨事項を使用して、パフォーマンスの大幅な向上が期待できる分野にエンジニアリングの取り組みを集中させます。最適化案を適用したら、再度評価を行い、スコアの改善を確認します。

動的スコア 静的スコア
アプリケーションのランタイム動作を使用して、パフォーマンス特性が評価されます。
動的パフォーマンス スコアは、特定のデバイスでのアプリのパフォーマンスを直接反映したものになります。
アプリケーションは静的に評価され、ベスト プラクティスとツールの採用に基づいてパフォーマンスの予測因子が評価されます。
静的パフォーマンス スコアでは、アプリのパフォーマンスに大きな影響を与えるツールがハイライト表示されます。このスコアにはランタイム評価は必要ありません。
動的スコアへのジャンプ 静的スコアへのジャンプ


動的アプリ パフォーマンス スコア

アプリ パフォーマンス スコアの動的な評価では、ランタイム データを使用して、特定のデバイスでのアプリのパフォーマンスが評価されます。

動的評価では、実際のパフォーマンスを評価するために実機が必要です。このスコアは、デバイスの機能によって異なります。複数のデバイスでパフォーマンスを評価して、パフォーマンスの不足がユーザーに与える影響を把握します。

次の表に、現在の動的アプリスコアのカテゴリと評価基準を示します。

カテゴリ 評価基準
アプリケーションの起動 アプリの起動からアプリがインタラクティブになるまでの測定時間(TTFD)。
レンダリング パフォーマンス スクロール、アニメーション、全画面レンダリングの遅いフレームとフリーズしたフレームの割合。


静的アプリのパフォーマンス スコア

静的なアプリ パフォーマンス スコアは、影響力の大きいツールとベスト プラクティスの使用状況に基づいて計算されます。アプリの静的パフォーマンス指標を正しくスコアリングするには、プロジェクトのソースコードにアクセスする必要があります。

次の表に示す基準は、静的アプリ パフォーマンス スコアの評価と生成に使用されます。

カテゴリ 評価基準
ビルド時間の改善
  • アプリが最新バージョンの Android Gradle プラグインを使用して、パフォーマンス向上ツールへのアクセスを有効にしている
  • フルモード R8 で有効になっている軽量化と最適化。例外は最小限に抑え、必要な領域に限定します。
起動時のパフォーマンス
Compose の導入 アプリが Compose の最新の安定版を使用している
監視と最適化 FullyDrawnReporter または reportFullyDrawn が適切なタイミングで使用されている

アプリを評価するためのヒント

アプリ パフォーマンス スコアの測定に関するヒントをいくつかご紹介します。

代表的なデバイスを選択する

動的スコアを測定する場合は、ユーザーベースと同じタイプのデバイスを使用することをおすすめします。静的スコアとは異なり、動的スコアはデバイスの仕様によって異なります。何から始めればよいかわからない場合は、低価格帯のデバイスを使用して、そこから改善に取り組んでください。

動的スコアのばらつきを評価する

コードを変更しなくても、複数の観測期間にわたって動的スコアが変化する可能性があります。これは、アプリ パフォーマンスや、デバイス上のその他のシステム アクティビティの本質的なばらつきが原因である可能性があります。スコアが大きく変動する場合は、連続して複数回テストし、最も一般的な動作をメモすることをおすすめします。

静的スコアは、コードを変更しない限り安定したままになります。

必要に応じてスコアを個別に使用する

動的スコアと静的スコアの両方を計算する時間や容量がない場合は、それぞれを単独で使用することもできます。動的スコアまたは静的スコアが改善されると、ユーザーにとってもメリットがあります。

他のモニタリング指標を補完する

アプリ パフォーマンス スコアは、アプリのパフォーマンスを大まかに評価する簡単な方法です。パフォーマンスに関する詳細な分析情報を取得するには、Android VitalsFirebase Performance Monitoringベンチマークなどの他のデータソースを検討してください。

スコアを改善する方法

通常、静的スコアと動的スコアの両方が低い場合は、動的スコアのトラブルシューティングを行う前に、静的スコアを最大化するための対応を行うことをおすすめします。静的スコアの欠点を解決すると、動的スコアも改善される可能性があります。そのため、アプリのパフォーマンスを改善するための最初のステップとして、静的スコアを最適化することをおすすめします。静的スコアはアプリコードの具体的な値または設定に基づいていますが、動的指標では通常、根本原因の調査と特定に時間がかかります。

各セグメント内のアプリ パフォーマンス スコアには、アプリの改善に役立つ実践的な手順が示されます。