本頁說明如何安裝 Car App 程式庫,以及如何設定應用程式的資訊清單檔案。
安裝 Car App 程式庫
如要將程式庫新增至應用程式,請參閱 Jetpack 程式庫的發布頁面。
設定應用程式的資訊清單檔案
您必須先設定應用程式的資訊清單檔案,才能建立車輛應用程式。
宣告 CarAppService
主機會透過您的 CarAppService 實作項目連線至應用程式。在資訊清單中宣告這項服務,讓主機探索及連線至您的應用程式。
您也需要在應用程式意圖篩選器的 <category> 元素中宣告應用程式類別。如要瞭解這個元素允許的值,請參閱支援的應用程式類別清單。
下列程式碼片段說明如何在資訊清單中,為興趣點應用程式宣告車輛應用程式服務:
<application>
...
<service
...
android:name=".MyCarAppService"
android:exported="true">
<intent-filter>
<action android:name="androidx.car.app.CarAppService"/>
<category android:name="androidx.car.app.category.POI"/>
</intent-filter>
</service>
...
<application>
支援的應用程式類別
如要宣告 CarAppService,請按照「宣告 CarAppService」一文的說明操作,並在意圖篩選器中加入一或多個下列值,宣告應用程式類別。
androidx.car.app.category.NAVIGATION:提供即時路線導航指示。請參閱「建構車用導航應用程式」。androidx.car.app.category.POI:提供相關功能,可尋找停車位、充電站和加油站等搜尋點。請參閱「建構車輛專用搜尋點應用程式」。androidx.car.app.category.IOT:使用者在車內即可下達指令,針對已連結的裝置進行相關操作。請參閱「建構車輛專用物聯網應用程式」。androidx.car.app.category.WEATHER:讓使用者查看目前位置或路線沿途的相關天氣資訊。請參閱「建構車用天氣應用程式」。androidx.car.app.category.MEDIA:使用者可透過這類應用程式在車上瀏覽及播放音樂、電台、有聲書等音訊內容。請參閱「建構車用範本化媒體應用程式」。androidx.car.app.category.MESSAGING:使用者可透過簡訊進行通訊。請參閱「建構 Android Auto 的範本化訊息體驗」。androidx.car.app.category.CALLING:讓使用者透過語音通話進行通訊。請參閱「建構 Android Auto 的通話體驗」。
如要詳細瞭解各類別的說明和資格條件,請參閱「車用 Android 應用程式品質」。
指定應用程式名稱和圖示
如要在系統 UI 中代表應用程式,carPermissionActivityLayout必須指定主機的應用程式名稱和圖示。使用 CarAppService 的 label 和 icon 屬性,指定主機用來代表應用程式的應用程式名稱和圖示:
...
<service
android:name=".MyCarAppService"
android:exported="true"
android:label="@string/my_app_name"
android:icon="@drawable/my_app_icon">
...
</service>
...
如未在 <service> 元素中宣告標籤或圖示,主機會改用 <application> 元素指定的值。
設定自訂主題
如要為車用應用程式設定自訂主題,請按照下列步驟操作:
在資訊清單檔案中新增
<meta-data>元素:<meta-data android:name="androidx.car.app.theme" android:resource="@style/MyCarAppTheme />宣告樣式資源,為自訂車輛應用程式主題設定屬性:
<resources> <style name="MyCarAppTheme"> <item name="carColorPrimary">@color/my_primary_car_color</item> <item name="carColorPrimaryDark">@color/my_primary_dark_car_color</item> <item name="carColorSecondary">@color/my_secondary_car_color</item> <item name="carColorSecondaryDark">@color/my_secondary_dark_car_color</item> <item name="carPermissionActivityLayout">@layout/my_custom_background</item> </style> </resources>