モバイルアプリ · 上級

モバイルのパフォーマンス:メモリ、バッテリー、速さの感覚

一行でいうと: アプリでは感覚は起動時間とスクロールのスムーズさで決まり、どちらも画像とメインスレッドで動く作業によって壊れる。

遅さの三つの源

メインスレッドでの作業。画像のデコード、ファイルの読み取り、リストの処理。そこで数ミリ秒以上かかるものはすべてスタッターに見える。

画像。メモリでは、画像はファイルサイズではなくピクセル数で重さを持つ。表示前に縮小し、キャッシュから解放する。

不要なネットワーク。起動時の重複リクエスト、頻繁なポーリング、バックグラウンドダウンロード——すべてがバッテリーで支払われ、ユーザーが測定しなくてもアプリに帰する指標だ。

起動時間

最初の画面に必要でないすべての初期化を遅延させる:アナリティクス、サードパーティライブラリ、設定のロード。長いスプラッシュ画面は第一印象であり、ストアでも測定される。

何を測定するか

インタラクティブ画面までの時間、スクロール中のドロップフレームの割合、千回の起動あたりのクラッシュ、バッテリー消費。古い機器で測定する——多くのユーザーがそれを持っている。

さらに深く

フィールドからのパフォーマンス指標を、モデルとOSバージョンで分解して収集する——ラボだけでなく。パフォーマンスの問題はほとんど常に一グループの機器に集中し、全体平均はそれを完全に隠す。