StrictModeでパフォーマンスをチューニングする
Gingerbreadの新機能の一つとして「StrictMode」が導入されましたので、実際に使用して検証してみました。
StrictModeとは?
StrictModeの利点
- パフォーマンスの劣化につながる要素(ディスクアクセス、ネットワークアクセス、データベースカーソルのリークなど)を特定することができます。
- 特定した結果をlogcatで表示することができ、特殊なログ解析ツール等は不要。
- 次期バージョン「Honeycomb」ではメイン(UI)スレッドでネットワークのリクエストを行うとfatalエラー(例えターゲットがHoneycomb以前だとしても)となります。したがって、StrictModeは次期バージョンへアプリを対応させる上で、重要なツールとなります。
StrictModeの欠点
- パフォーマンスを劣化させる全てを検知できる訳ではない。
- 正常なアクセスもポリシー違反として検知されることがある。
- 将来において、より多くの種類の検知を行うようになるため、リリース時には手動で無効化しておく手間がかかる。