Questa guida descrive in dettaglio le diverse funzionalità della libreria di app per auto che puoi utilizzare per implementare la funzionalità dell'app dei punti di interesse.
Dichiara il supporto delle categorie nel file manifest
La tua app deve dichiarare la
categoria di app per auto androidx.car.app.category.POI
nel filtro per intent della relativa
CarAppService
.
L'esempio seguente mostra come dichiarare la categoria di app:
<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>
Accedi al modello di mappa
Le app possono accedere a PlaceListMapTemplate
, progettato appositamente per mostrare un elenco dei PDI insieme a una mappa visualizzata dall'host.
Per accedere a questo modello, la tua app deve dichiarare l'autorizzazione androidx.car.app.MAP_TEMPLATES
nel file AndroidManifest.xml
:
<uses-permission android:name="androidx.car.app.MAP_TEMPLATES"/>
Aggiorna contenuto PlaceListMapTemplate
Puoi consentire ai conducenti di aggiornare i contenuti semplicemente toccando un pulsante mentre sfogliano elenchi di luoghi creati con PlaceListMapTemplate
.
Implementa il metodo
onContentRefreshRequested
dell'interfaccia OnContentRefreshListener
e utilizza
PlaceListMapTemplate.Builder.setOnContentRefreshListener
per impostare il listener sul modello per attivare l'aggiornamento dell'elenco.
Lo snippet seguente mostra come impostare il listener sul modello:
Kotlin
PlaceListMapTemplate.Builder() ... .setOnContentRefreshListener { // Execute any desired logic ... // Then call invalidate() so onGetTemplate() is called again invalidate() } .build()
Java
new PlaceListMapTemplate.Builder() ... .setOnContentRefreshListener(() -> { // Execute any desired logic ... // Then call invalidate() so onGetTemplate() is called again invalidate(); }) .build();
Il pulsante di aggiornamento viene mostrato nell'intestazione di PlaceListMapTemplate
solo se il listener ha un valore.
Quando l'utente fa clic sul pulsante di aggiornamento, viene richiamato il metodo onContentRefreshRequested
della tua implementazione OnContentRefreshListener
. All'interno di
onContentRefreshRequested
, chiama il
metodo
Screen.invalidate
. L'host richiama quindi il metodo Screen.onGetTemplate
della tua app per recuperare il modello con i contenuti aggiornati. Per ulteriori informazioni sull'aggiornamento dei modelli, consulta Aggiornare i contenuti di un modello. Se il modello successivo restituito da onGetTemplate
è dello stesso tipo, viene conteggiato come un aggiornamento e non viene conteggiato ai fini della quota del modello.
Eseguire l'integrazione con l'Assistente Google usando Azioni app
Attiva i comandi vocali per l'app per PDI utilizzando l'assistente per consentire agli utenti di cercare punti d'interesse chiedendo, ad esempio, "Hey Google, trova stazioni di ricarica nelle vicinanze su EsempioApp". Per istruzioni dettagliate, vedi Azioni app per le auto.