W tym przewodniku opisujemy różne funkcje biblioteki aplikacji samochodowych, których możesz używać do implementowania funkcji aplikacji dotyczącej ważnych miejsc (POI).
Deklarowanie obsługi kategorii w pliku manifestu
Aplikacja musi zadeklarować androidx.car.app.category.POI
kategorię aplikacji samochodowej
w filtrze intencji usługi
CarAppService.
Poniższy przykład pokazuje, jak zadeklarować kategorię aplikacji:
<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>
Dostęp do szablonów map
Aplikacje dotyczące punktów zainteresowania mogą korzystać z
PlaceListMapTemplate
i MapWithContentTemplate.
Szablon PlaceListMapTemplate jest przeznaczony do wyświetlania listy punktów zainteresowania obok mapy renderowanej przez hosta.
Szablon MapWithContentTemplate może służyć do wyświetlania list i innych typów
treści obok mapy renderowanej przez aplikację. Więcej informacji o korzystaniu z tego
szablonu znajdziesz w artykule
Rysowanie map.
Aby uzyskać dostęp do tych szablonów, aplikacja musi zadeklarować uprawnienie androidx.car.app.MAP_TEMPLATES w pliku AndroidManifest.xml:
<manifest ...>
...
<uses-permission android:name="androidx.car.app.MAP_TEMPLATES"/>
...
</manifest>
Odświeżanie treści szablonu PlaceListMapTemplate
Możesz umożliwić kierowcom odświeżanie treści przez kliknięcie przycisku podczas
przeglądania list miejsc utworzonych za pomocą
PlaceListMapTemplate.
Zaimplementuj metodę
onContentRefreshRequested
interfejsu
OnContentRefreshListener
i użyj metody
PlaceListMapTemplate.Builder.setOnContentRefreshListener, aby ustawić odbiornik w szablonie i włączyć odświeżanie listy.
Poniższy fragment kodu pokazuje, jak ustawić odbiornik w szablonie:
return PlaceListMapTemplate.Builder() // ... .setOnContentRefreshListener { // Execute any desired logic // ... // Then call invalidate() so onGetTemplate() is called again invalidate() } .build()
Przycisk odświeżania jest wyświetlany w nagłówku szablonu PlaceListMapTemplate tylko wtedy, gdy odbiornik ma wartość.
Gdy użytkownik kliknie przycisk odświeżania, zostanie wywołana metoda onContentRefreshRequested implementacji OnContentRefreshListener. W
onContentRefreshRequestedwywołaj
Screen.invalidate
metodę. Następnie host wywoła metodę aplikacji, aby pobrać szablon ze zaktualizowaną treścią.Screen.onGetTemplate Więcej informacji o odświeżaniu szablonów znajdziesz w artykule Odświeżanie treści szablonu. Dopóki następny szablon zwracany przez metodę onGetTemplate jest tego samego typu, jest on traktowany jako odświeżenie i nie jest wliczany do limitu szablonów.
Integracja z Gemini lub Asystentem Google za pomocą akcji w aplikacji
Włącz obsługę głosową w aplikacji dotyczącej punktów zainteresowania za pomocą Gemini lub Asystenta Google, aby umożliwić użytkownikom wyszukiwanie punktów zainteresowania przez zadawanie pytań takich jak "OK Google, znajdź pobliskie stacje ładowania w aplikacji ExampleApp". Szczegółowe instrukcje znajdziesz w artykule Akcje w aplikacji na Androida Auto.