バッテリーの消費量

メディアの再生によるバッテリーの消費はどの程度重要ですか?

不要なバッテリー消費を回避することは、パフォーマンスの高い Android アプリを開発するうえで重要な要素です。メディアの再生はバッテリー消耗の主な原因となる可能性がありますが、特定のアプリでの重要性は、使用パターンに大きく依存します。アプリが 1 日に少量のメディアを再生するためにのみ使用されている場合、対応するバッテリー使用量はデバイスの総使用量のごく一部にすぎません。このような場合は、使用するプレーヤーを選択する際に、バッテリーの最適化よりも機能セットと信頼性を優先することをおすすめします。一方、アプリで大量のメディアを毎日再生することが多い場合は、複数の有効なオプションから選択する際に、バッテリー消費量の最適化を重視する必要があります。

ExoPlayer の電力効率はどの程度ですか?

Android デバイスとメディア コンテンツのエコシステムは多様であるため、ExoPlayer のバッテリー消費について広く適用できる記述をすることは困難です。パフォーマンスは、ハードウェア、Android のバージョン、再生するメディアによって異なります。したがって、以下の情報はあくまでガイダンスとして扱ってください。

動画の再生

動画再生の場合、再生中に消費される電力の大部分は、動画ストリームの表示とデコードに使用されます。

出力に SurfaceViewTextureView のどちらを選択するかは、消費電力に大きな影響を与える可能性があります。SurfaceView は電力効率が高く、TextureView では一部のデバイスで動画再生中の総電力消費量が最大 30% 増加します。そのため、可能な場合は SurfaceView を使用することをおすすめします。SurfaceViewTextureView の選択について詳しくは、サーフェス ページをご覧ください。

オーディオの再生

短い音声の再生や、画面がオンの状態での再生では、音声は電力に大きな影響を与えません。

画面をオフにした状態で長時間再生する場合は、ExoPlayer の音声オフロード モードを使用することをおすすめします。オーディオ オフロードを使用すると、オーディオ処理を CPU から専用のシグナル プロセッサにオフロードできます。有効にする方法について詳しくは、track selection guide をご覧ください。