Androidの「メディア」によるバッテリードレインかどうかを確認する方法
Android 6.0にアップデートしたXperia Z4くんがバッテリードレイン病にかかってしまった。とりあえず原因を探り、対処方法を見つけたのでメモしておく。
原因を調べる
まず「設定」→「バッテリー」→「電池使用量」を調べる。
この時点で明らかに「メディア」が怪しい。
もう少し詳細に調べる
PCが手元にあれば、adbを使ってtopを見ることができる。
ここで、/system/bin/sdcardとあるので、外付けSDカードが原因だ、というわけではないことに注意。これはそういう名前のサービスで、詳しくは Configuration Examples | Android Open Source Project などを参照されたし。
さらに詳細に調べる
端末がrootedなら、adbからsuしてlsofなどを叩くこともできる。詳しくは Finding open files with lsof などを参照されたし。
今回の原因
/storage/sdcard0/DCIM/.thumbnailsを消すと、android.process.mediaの暴走が止まった。思い当たることといえば、
- 最近Googleの「フォト」アプリを更新した
- BitTorrentSyncを使用して、DCIMフォルダをPCと同期している
- 同期したファイルに、破損したものがあった(Lightroomへのインポート時に警告が表示された)
ぐらい。ひとまず問題があれば、怪しいフォルダを探して、PCやクラウドにバックアップした後、top | grep media を眺めながら、サクッと消してみるのがよさそう