Bu sayfada, Car App kitaplığının nasıl yükleneceği ve uygulamanızın manifest dosyasının nasıl yapılandırılacağı açıklanmaktadır.
Car App Library'yi yükleme
Kitaplığı uygulamanıza eklemek için Jetpack kitaplığı yayın sayfasını inceleyin.
Uygulamanızın manifest dosyalarını yapılandırma
Araba uygulamanızı oluşturmadan önce uygulamanızın manifest dosyalarını yapılandırmanız gerekir.
CarAppService'inizi beyan etme
Barındırıcı, CarAppService uygulamanız üzerinden uygulamanıza bağlanır.
Bu hizmeti, ana makinenin uygulamanızı keşfedip bağlanabilmesi için manifest dosyanızda bildirirsiniz.
Ayrıca, uygulamanızın intent filtresinin <category> öğesinde uygulamanızın kategorisini de beyan etmeniz gerekir. Bu öğe için izin verilen değerler hakkında bilgi edinmek üzere desteklenen uygulama kategorileri listesine bakın.
Aşağıdaki kod snippet'inde, manifestinizde ilgi alanı uygulaması için bir araba uygulaması hizmetinin nasıl tanımlanacağı gösterilmektedir:
<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>
Desteklenen uygulama kategorileri
CarAppService bölümünde açıklandığı gibi CarAppService'inizi beyan ettiğinizde, intent filtresine bu değerlerden birini veya daha fazlasını ekleyerek uygulamanızın kategorisini de beyan etmeniz gerekir.
androidx.car.app.category.NAVIGATION: Adım adım navigasyon talimatları sağlar. Arabalar için navigasyon uygulamaları geliştirme başlıklı makaleyi inceleyin.androidx.car.app.category.POI: Park yerleri, şarj istasyonları ve benzin istasyonları gibi ilgi çekici yerleri bulmayla ilgili işlevler sunar. Arabalar için ilgi çekici yer uygulamaları geliştirme başlıklı makaleyi inceleyin.androidx.car.app.category.IOT: Kullanıcıların arabanın içinden bağlı cihazlarda ilgili işlemleri yapmasına olanak tanır. Arabalar için Nesnelerin İnterneti uygulamaları geliştirme başlıklı makaleyi inceleyin.androidx.car.app.category.WEATHER: Kullanıcıların mevcut konumlarıyla veya rotalarıyla ilgili hava durumu bilgilerini görmelerini sağlar. Arabalar için hava durumu uygulamaları geliştirme başlıklı makaleyi inceleyin.androidx.car.app.category.MEDIA: Kullanıcıların arabada müzik, radyo, sesli kitap ve diğer ses içeriklerine göz atıp bunları oynatmasına olanak tanır. Arabalar için şablonlu medya uygulamaları oluşturma başlıklı makaleyi inceleyin.androidx.car.app.category.MESSAGING: Kullanıcıların kısa metin mesajlarıyla iletişim kurmasına olanak tanır. Android Auto için şablonlu mesajlaşma deneyimleri oluşturma başlıklı makaleyi inceleyin.androidx.car.app.category.CALLING: Kullanıcıların sesli arama ile iletişim kurmasına olanak tanır. Android Auto için arama deneyimleri oluşturma başlıklı makaleyi inceleyin.
Her kategorinin ayrıntılı açıklamaları ve bir kategoriye uygunluk için gereken ölçütler hakkında bilgi edinmek için Arabalar için Android uygulama kalitesi başlıklı makaleyi inceleyin.
Uygulama adını ve simgesini belirtin
Uygulamanızı sistem kullanıcı arayüzünde temsil etmek için carPermissionActivityLayout, ana makine için bir uygulama adı ve simge belirtmelidir. Barındırıcının uygulamanızı temsil etmek için kullandığı uygulama adını ve simgesini belirtmek üzere CarAppService öğenizin label ve icon özelliklerini kullanın:
...
<service
android:name=".MyCarAppService"
android:exported="true"
android:label="@string/my_app_name"
android:icon="@drawable/my_app_icon">
...
</service>
...
<service> öğesinde bir etiket veya simge bildirmezseniz ana makine, <application> öğesi tarafından belirtilen değerlere geri döner.
Özel tema ayarlama
Araba uygulamanız için özel tema ayarlamak üzere:
Manifest dosyanıza bir
<meta-data>öğesi ekleyin:<meta-data android:name="androidx.car.app.theme" android:resource="@style/MyCarAppTheme />Özel araba uygulaması temanızın özelliklerini ayarlamak için stil kaynağınızı bildirin:
<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>