Android Auto 向け通話機能を構築する

通話機能はベータ版です
現時点では、通話機能を備えたコミュニケーション アプリを Google Play ストアの内部テスト トラックとクローズド テスト トラックに公開できます。オープンテスト トラックと製品版トラックへの公開は、後日可能となります。

音声通話に対応したアプリでは、Telecom Jetpack ライブラリと統合し、自動車向け Android アプリのライブラリを活用したテンプレートに基づくユーザー インターフェースを導入することで、Android Auto を利用する際のユーザー体験が向上します。

Jetpack Telecom ライブラリと統合する

通話アプリを作成するに記載されているように、アプリに Telecom Jetpack ライブラリを統合すると、Android Auto での通話の応答と制御をサポートできます。特にアプリでは、リモートによるサーフェス サポートで記載されているコールバックへの対応が必要です。また、ユーザーがスマートフォンで Android Auto を起動しているときだけでなく、常にアプリの通信機能を統合させる必要があります。

テンプレートに基づく通話体験を構築する

Android Auto の通話ビュー(アプリの通信機能の統合による機能)に加えて、アプリ側で用意したテンプレートを使えば、ユーザーが車載ディスプレイからアプリのコンテンツを操作できる通話体験を提供できます。たとえば、電話をかけるための連絡先リストや、今後の通話予定、通話履歴などを表示できます。通話が始まると、Android Auto が通話ビューを自動的に表示し、アプリのテンプレート画面はその画面に切り替わります。

自動車向け Android アプリのライブラリを使用するテンプレートに基づくアプリに Android Auto のサポートを追加するに記載されているガイダンスに沿って操作して、アプリのテンプレートに基づく体験の構築に取りかかリましょう。構築中は、このページのガイダンスを参照して通話アプリの具体的な要件を確認してください。

アプリのマニフェスト ファイルを構成する

アプリで次のことを行うと、アプリの機能を Android Auto に通知できます。

マニフェストでカテゴリのサポートを宣言する

アプリでは、CarAppService のインテント フィルタで、自動車アプリのカテゴリとして androidx.car.app.category.CALLING を宣言する必要があります。

<application>
    ...
   <service
       ...
        android:name=".MyCarAppService"
        android:exported="true">
      <intent-filter>
        <action android:name="androidx.car.app.CarAppService" />
        <category android:name="androidx.car.app.category.CALLING"/>
      </intent-filter>
    </service>
    ...
<application>

通話アプリを配信する

通話機能をサポートするアプリは Google Play の内部テスト トラックとクローズド テスト トラックにのみ公開できます。そのため、通話機能を含むビルドをオープンテスト トラックや製品版トラックに昇格させないようにしてください。これらのトラックに含まれるビルドを送信すると拒否されます。