Esperienza di navigazione personalizzata

L'SDK di navigazione offre diversi modi per integrare un'esperienza di navigazione nella tua app. In questa pagina viene spiegato che cos'è un'esperienza di navigazione personalizzata e in cosa si differenzia dalle altre esperienze di navigazione disponibili nell'SDK di navigazione.

Che cos'è un'esperienza di navigazione personalizzata?

Il modo principale per implementare l'SDK di navigazione è utilizzare l'esperienza di navigazione di Google, che ti consente di incorporare un'esperienza di navigazione passo passo che utilizza elementi e immagini dell'interfaccia utente forniti da Google, in modo simile all'esperienza di navigazione all'interno delle app Google Maps. Se hai bisogno di maggiore flessibilità rispetto a quella offerta da Google, puoi implementare un'esperienza di navigazione personalizzata. Per esperienza di navigazione personalizzata si intende qualsiasi cosa, dall'eliminazione completa delle indicazioni di svolta con la navigazione in esecuzione e soltanto come processo in background, alla proiezione di un'esperienza di guida altamente personalizzata su una schermata separata dal dispositivo che esegue la navigazione. Con un'esperienza di navigazione personalizzata, la tua app chiama l'SDK di navigazione per richiedere un feed di navigazione passo passo. In seguito, fornisci e gestisci gli elementi e le immagini dell'interfaccia utente che l'utente vede nell'esperienza di navigazione. Sebbene l'utilizzo della navigazione Google sia in genere più semplice da implementare, la creazione di un'esperienza di navigazione personalizzata consente una maggiore personalizzazione.

Quando crei un'esperienza di navigazione personalizzata, l'app chiama l'SDK di navigazione per avviare, eseguire e interrompere la navigazione utilizzando il seguente flusso:

  1. Avvia la navigazione. Come per la navigazione di Google, un'esperienza di navigazione personalizzata comporta comunque la creazione di un'istanza di navigazione e l'impostazione della destinazione. Tuttavia, con un'esperienza di navigazione personalizzata, puoi raggiungere questo obiettivo stabilendo prima una sessione di navigazione utilizzando GMSNavigationService.createNavigationSession, che è un oggetto non UI basato su stato che può funzionare con o senza un controller di visualizzazione.

    Per ulteriori informazioni, consulta Attivare il feed di dati passo passo.

    Guarda la demo: il download dell'SDK di navigazione contiene una demo che puoi eseguire per visualizzare un esempio di esperienza di navigazione che passa da una guida passo passo a un'esperienza di navigazione che mostra solo la posizione del dispositivo che si sposta lungo una polilinea della strada.

  2. Navigazione attiva. Ecco un'altra differenza fondamentale tra un'esperienza di navigazione fornita da Google e un'esperienza di navigazione personalizzata. Anziché affidare le indicazioni al gestore eventi integrato dell'SDK di navigazione, puoi attivare il feed passo passo e implementare i gestori di eventi. In questo modo, la tua esperienza può rispondere agli eventi descritti nella sezione Ascoltare gli eventi di navigazione.

  3. Termina la navigazione. Come per l'esperienza di navigazione di Google, anche la navigazione personalizzata richiede di terminarla nel modo più adatto all'esperienza dell'app.

Quando potresti utilizzare un'esperienza di navigazione personalizzata?

La tabella seguente descrive alcuni scenari di navigazione personalizzata.

Scenario di esempio

Passi di alto livello

Per i piccoli dispositivi come i veicoli a due ruote, devi fornire indicazioni per il conducente di solo testo.

Crea il navigatore e configura le indicazioni passo passo come feed di dati su un dispositivo con schermo di piccole dimensioni mentre il navigatore è in esecuzione sul cellulare del conducente al di fuori della sua visuale immediata.

Vuoi rendere la tua app disponibile come servizio auto per i conducenti che utilizzano Android Auto

  1. Configura il servizio auto.
  2. Configura il progetto SDK di navigazione.
  3. Se non l'hai ancora fatto, imposta un navigatore.
  4. Attiva il feed di indicazioni passo passo.
  5. Disegna la mappa sulla piattaforma dell'app Auto e compila i campi dal feed di dati che hai configurato.

Per ulteriori informazioni, vedi Attivare la navigazione per Android Auto.

I conducenti che utilizzano la tua app vogliono una mappa panoramica per la maggior parte del loro viaggio, con indicazioni passo passo minime per le strade cittadine.

L'app deve consentire ai conducenti di entrare e uscire dall'esperienza di navigazione su Google in base alle loro esigenze, senza alternare le impostazioni del navigatore per modalità di destinazione e modalità di viaggio.