Önemli yer uygulaması oluşturma

Bu kılavuzda, önemli yer (ÖY) uygulamanızın işlevlerini 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

Sürücüler, PlaceListMapTemplate ile oluşturulan yer listelerine göz atarken bir düğmeye dokunarak içeriği yenileyebilir. 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çeriğe sahip ş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 bir sonraki şablon aynı türde olduğu sürece yenileme olarak sayılır ve şablon kotasına dahil edilmez.

Uygulama İşlemleri'ni kullanarak Google Asistan ile entegrasyon

Asistan'ı kullanarak ÖN uygulamanızda sesli aramayı etkinleştirin. Böylece kullanıcılar, "Ok Google, ExampleApp'te yakındaki şarj istasyonlarını bul" gibi sorular sorarak önemli noktaları arayabilir. Ayrıntılı talimatlar için Arabalar için Uygulama İşlemleri başlıklı makaleyi inceleyin.