Apps that support making voice calls can improve their experience on Android Auto by integrating with the Telecom Jetpack library and providing a templated user interface built using the Android for Cars App Library.
Integrate with the Jetpack Telecom library
To support answering and controlling calls on Android Auto, your app must integrate with the Telecom Jetpack library as described in Build a calling app. In particular, your app must support the callbacks described inRemote surface support. Your app must also use it's telecom integration at all times, not just when a user's phone is running Android Auto.
Build a templated calling experience
In addition to the in-call view that Android Auto provides and which is powered by your app's telecom integration, your app can provide a templated experience to let users access your app's content on their car screen. For example, your app can display a list of contacts with actions to start a call, an agenda view of upcoming calls, a call log, and more. While a call is ongoing, Android Auto automatically displays its in-call view for the duration of the call, replacing your app's templated screens.
Follow the guidance in Use the Android for Cars App Library and Add support for Android Auto to your templated app to get started building your app's templated experience. Then, refer to the guidance on this page to understand the specific requirements for calling apps.
Configure your app's manifest files
To inform Android Auto of your app's capabilities, your app must do the following:
Declare category support in your manifest
Your app needs to declare the androidx.car.app.category.CALLING
car app category in the intent
filter of its CarAppService
.
<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>
Distribute calling apps
Because apps that support calling can only be published to Internal Testing and Closed Testing tracks on Google Play, you shouldn't promote builds that include support to Open Testing or Production tracks, as submissions containing builds on those tracks will be rejected.