Android には、アプリの構成済み動作を変更するオーバーライドが用意されています。たとえば、FORCE_RESIZE_APP
オーバーライドは、アプリ マニフェストで resizeableActivity="false"
が設定されている場合でも、ディスプレイ サイズに合わせてアプリのサイズを変更するようシステムに指示します。
デバイス メーカーは、一部の大画面デバイス上のアプリにオーバーライドを適用します。
アプリごとのオーバーライドは、大画面デバイスでのユーザー エクスペリエンスを改善することを目的としています。アプリは一部のオーバーライドを無効にできます。
アプリごとのオーバーライドについて詳しくは、デバイス互換性モードをご覧ください。
デバイス メーカーによるオーバーライド
デバイス メーカーは、タブレット、折りたたみ式デバイス、その他の大画面デバイスでのユーザー エクスペリエンスを向上させるために、アプリにオーバーライドを適用します。オーバーライドの一覧については、デバイス互換モードをご覧ください。
オーバーライドを無効にする
PackageManager.Property
タグを使用すると、アプリはデバイス メーカーのオーバーライドを無効にできます。Android 14 では、以下のタグが導入されています。
PROPERTY_COMPAT_ALLOW_RESIZEABLE_ACTIVITY_OVERRIDES
FORCE_RESIZE_APP
オーバーライドとFORCE_NON_RESIZE_APP
オーバーライドを無効にするには、アプリ マニフェストでこのプロパティを false に設定します。<application> <property android:name="android.window.PROPERTY_COMPAT_ALLOW_RESIZEABLE_ACTIVITY_OVERRIDES" android:value="false"/> </application>
大画面向けにアプリを最適化する:アプリのサイズ変更を可能にするとともに、レスポンシブ/アダプティブ レイアウトを実装すると、あらゆるサイズのディスプレイで最適なユーザー エクスペリエンスを実現できます。
PROPERTY_COMPAT_ALLOW_MIN_ASPECT_RATIO_OVERRIDE
OVERRIDE_MIN_ASPECT_RATIO
を無効にするには、アプリ マニフェストでこのプロパティを false に設定します。<application> <property android:name="android.window.PROPERTY_COMPAT_ALLOW_MIN_ASPECT_RATIO_OVERRIDE" android:value="false"/> </application>
このプロパティでは、次のデバイス メーカーのオーバーライドも無効になります。
OVERRIDE_MIN_ASPECT_RATIO_PORTRAIT_ONLY
: 縦向き限定のアクティビティに所定の最小アスペクト比を強制的に適用する構成を制限します。OVERRIDE_MIN_ASPECT_RATIO_MEDIUM
: アクティビティの最小アスペクト比を中程度の値(3:2)に設定します。OVERRIDE_MIN_ASPECT_RATIO_LARGE
: アクティビティの最小アスペクト比を大きな値(16:9)に設定します。OVERRIDE_MIN_ASPECT_RATIO_TO_ALIGN_WITH_SPLIT_SCREEN
: 分割画面のアスペクト比の使用を有効にします。レターボックス表示を回避して、分割画面モードで使用可能なすべてのスペースを使用することをアプリに許可します。OVERRIDE_MIN_ASPECT_RATIO_EXCLUDE_PORTRAIT_FULLSCREEN
: 利用可能なすべての画面スペースを使用するには、縦向きの全画面表示の最小アスペクト比のオーバーライドを無効にします。
大画面向けにアプリを最適化する: アプリでアスペクト比の制限を設定しないでください。さまざまな画面サイズとマルチ ウィンドウ モードをサポートするアプリ レイアウトを作成します。