Bu kılavuzda, önemli yer (ÖY) uygulamanızın işlevselliğini uygulamak için kullanabileceğiniz Araba Uygulaması Kitaplığı'nın farklı özellikleri ayrıntılı olarak açıklanmaktadır.
Manifest dosyanızda kategori desteğini bildirin
Uygulamanız, androidx.car.app.category.POI
araba uygulaması kategorisini
CarAppService intent filtresinde beyan etmelidir.
Aşağıdaki örnekte, uygulama kategorisinin nasıl beyan edileceği 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>
Harita şablonlarına erişme
ÖY uygulamaları PlaceListMapTemplate ve MapWithContentTemplate erişebilir.
PlaceListMapTemplate, özellikle ana makine tarafından oluşturulan bir haritanın yanında ÖY'lerin listesini göstermek için tasarlanmıştır.
MapWithContentTemplate, uygulamanız tarafından oluşturulan bir haritanın yanında listeleri ve diğer içerik türlerini göstermek için kullanılabilir. Bu şablonun kullanımıyla ilgili daha fazla bilgi için Harita çizme başlıklı makaleyi inceleyin.
Bu şablonlara erişmek için uygulamanızın AndroidManifest.xml dosyasında androidx.car.app.MAP_TEMPLATES iznini beyan etmesi gerekir:
<manifest ...>
...
<uses-permission android:name="androidx.car.app.MAP_TEMPLATES"/>
...
</manifest>
PlaceListMapTemplate içeriğini yenileme
PlaceListMapTemplate ile oluşturulan yer listelerine göz atarken bir düğmeye dokunarak sürücülere içeriği yenileme olanağı sunabilirsiniz.
OnContentRefreshListener
arayüzünün onContentRefreshRequested
yöntemini uygulayın ve liste yenilemeyi etkinleştirmek için şablonda dinleyiciyi ayarlamak üzere PlaceListMapTemplate.Builder.setOnContentRefreshListener
kullanın.
Aşağıdaki snippet'te, şablonda işleyicinin nasıl ayarlanacağı gösterilmektedir:
return PlaceListMapTemplate.Builder() // ... .setOnContentRefreshListener { // Execute any desired logic // ... // Then call invalidate() so onGetTemplate() is called again invalidate() } .build()
Yenileme düğmesi yalnızca dinleyicinin değeri varsa PlaceListMapTemplate üstbilgisinde gösterilir.
Kullanıcı yenileme düğmesini tıkladığında onContentRefreshRequested
uygulamanızın OnContentRefreshListener yöntemi çağrılır. onContentRefreshRequested içinde Screen.invalidate yöntemini çağırın. Ardından, düzenleyen, yenilenen içeriklerle şablonu almak için uygulamanızın Screen.onGetTemplate yöntemini tekrar çağırır. Şablonları yenileme hakkında daha fazla bilgi için Şablon içeriklerini yenileme başlıklı makaleyi inceleyin. onGetTemplate tarafından döndürülen sonraki şablon aynı türde olduğu sürece yenileme olarak sayılır ve şablon kotasına dahil edilmez.
Uygulama İşlemleri'ni kullanarak Gemini veya Google Asistan ile entegrasyon
Kullanıcıların "Ok Google, ExampleApp'te yakındaki şarj istasyonlarını bul" gibi sorular sorarak önemli yerleri aramasına olanak tanımak için Gemini veya Google Asistan'ı kullanarak ÖY uygulamanızda sesli aramayı etkinleştirin. Ayrıntılı talimatlar için Arabalar için Uygulama İşlemleri başlıklı makaleyi inceleyin.