駐車時向けアプリに Android Auto のサポートを追加する

Android 15 以降を搭載したデバイスでは、Android Auto は サポートされている駐車時向けアプリのカテゴリのアプリをヘッドユニットで直接実行することをサポートしています。Android Auto での駐車時向けアプリのユーザー エクスペリエンスについて詳しくは、 駐車時向けアプリをご覧ください。

Android Auto のサポートを宣言する

アプリが Android Auto をサポートしていることを宣言するには、アプリのマニフェスト内のアクティビティのインテント フィルタに次の <category> 要素を含める必要があります。

<activity ...>
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        ...
        <category android:name="android.intent.category.CAR_LAUNCHER" />
    </intent-filter>
</activity>

通常、android.intent.category.CAR_LAUNCHER カテゴリ要素は android.intent.category.LAUNCHER 要素と同じインテント フィルタに配置できますが、必要に応じて別のインテント フィルタに配置することもできます。

カテゴリ固有のマニフェスト エントリ

上記の要件に加えて、ゲームには追加の要件があります。 アプリをゲームとしてマークするをご覧ください。

一般的な Android Auto の画面サイズをサポートする

最高のユーザー エクスペリエンスを実現するため、アプリをさまざまな画面サイズに完全に対応させる ことをおすすめします。少なくとも、Android Auto をサポートするさまざまな車種で高品質のエクスペリエンスを確保するため、アプリが横向き画面で大幅にピラーボックス表示されることは**ない** ようにする必要があります。DO-2

たとえば、横向き画面でピラーボックス表示される縦向きのアスペクト比でアプリが実行される場合、Google Play ストアの審査時に不承認となります。横向き画面でピラーボックス表示が最小限に抑えられた横向きのアスペクト比で実行されるアプリや、縦向き画面でレターボックス表示される縦向きのアスペクト比で実行されるアプリは許容されます。

標準的な画面サイズでテストする

Android Auto 向けのアプリをビルドしてテストする際は、次の デスクトップ ヘッドユニット(DHU)構成を使用して、アプリが 上記の要件を満たしていることを確認できます。

小さい横向き

[general]
resolution = 800x480
dpi = 160
...

ワイド横向き

[general]
resolution = 1920x1080
dpi = 160
marginheight = 596
normalizedpi = true
cropmargins = true
...

縦向き

[general]
resolution = 1920x1080
dpi = 160
marginwidth = 878
normalizedpi = true
cropmargins = true
...

Android Auto での使用状況を検出する

分析などの目的で、Android Auto を介してアプリが使用されていることを検出する場合は、次の 2 つのシグナルを確認できます。

  • CarConnection API によって報告される接続状態。Android Auto が接続されている場合、これは CONNECTION_TYPE_PROJECTION になります。
  • アクティブなディスプレイのディスプレイ ID。Android Auto を介して使用する場合など、アプリが組み込み画面以外のディスプレイで実行されている場合、これは DEFAULT_DISPLAY以外の値になります。

次のスニペットは、これらのシグナルを組み合わせて Android Auto を介した使用状況を検出する方法を示しています。

val connectionType = ...
val displayId = context.display.displayId
isRunningOnAndroidAuto = connectionType == CONNECTION_TYPE_PROJECTION and displayId != DEFAULT_DISPLAY