TIER 3 - 大画面に対応
構成とは、デバイスの状態とシステムの状態を組み合わせたものです。デバイスの状態には、画面の向き、表示サイズ、折りたたみ式デバイスの折りたたみ状態または展開状態、外部キーボードの使用可否、接続されたディスプレイなどがあります。システム状態には、マルチウィンドウやマルチディスプレイなどの表示モードや、フォントサイズや言語 / 地域などのユーザー定義の設定などがあります。
構成変更とは、デバイスまたはシステムの状態の変化(デバイスの回転、アプリ ウィンドウのサイズ変更、デバイスの展開、周辺機器の接続、ユーザー設定の更新など)のことです。
大画面デバイスでは、小画面のスマートフォンと同じ構成変更も適用されますが、大画面では次のような独自の構成変更もあります。
- デバイスの折りたたみと展開
- マルチウィンドウ モードでのフリーフォームのデスクトップ タイプのウィンドウのサイズ変更
アクティビティの再作成
Android は、構成の変更が発生したときに実行中のアクティビティを破棄して再作成することで、アプリの構成変更を処理します。Android は、新しい構成に対応する設定とリソースでアクティビティを再作成します。
さまざまな画面、アプリのウィンドウ サイズ、アスペクト比をサポートするレスポンシブ/アダプティブ レイアウトでアプリを設計すると、Android フレームワークの構成処理によって、大画面と小画面の両方で最適な表示が可能になります。
セルフサービスの構成管理
アプリ固有の最適化のような特殊なケースでは、Android にアプリのアクティビティを破棄して再作成させるのではなく、アプリが構成の変更を処理できるようにします。
アプリ マニフェストで <activity>
要素の android:configChanges
属性を設定して、アプリが処理する構成変更を指定します。
たとえば、マルチウィンドウ構成の変更をアプリで処理できるようにします。
<activity
android:name=".MyActivity"
android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout" />
状態管理
構成の変更を Android が処理するか、ユーザー自身で行うかにかかわらず、アプリはコンテキストと状態を維持する必要があります。構成変更後は、たとえばメディアの再生中やデータ入力中に設定変更があったときなどに、処理を中断せず継続しながら、データを失うことなく、アプリの操作を再開できるようにする必要があります。
次のステップ
構成変更を処理し、アプリの動作を継続する方法について詳しくは、次のデベロッパー ガイドをご覧ください。