Önemli yer uygulaması oluşturma

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.