Domande frequenti
Dettagli del prodotto
- In che modo i Termini dell'SDK di navigazione di servizio?
- Quali lingue supporta la guida vocale?
- La rotta viene mantenuta quando l'utente esce dalla modalità di navigazione?
- I polilinee sono disponibili quando si avvia o si modifica un percorso?
- Gli utenti dell'app devono avere installato Google Maps mobile?
- L'SDK Navigation può identificare i parcheggi vicino a ristoranti e altre destinazioni?
- L'SDK di navigazione mostrare la direzione del traffico sulle corsie quando ci si avvicina a un punto di svolta?
- Quali versioni del JDK supporta Navigation SDK?
Rete e connettività
- In che modo L'SDK di navigazione gestisce una connettività di rete scadente?
- In che modo L'SDK di navigazione gestisce segnali GPS di scarsa qualità o persi?
- È disponibile una modalità offline?
Dati
- Posso recuperare tutte le fermate/destinazioni di un viaggio prima di iniziare il percorso?
- È disponibile una guida percorso passo passo? all'inizio di un percorso?
- In che modo l'orario di arrivo stimato (ETA) viene comunicato agli utenti dell'app?
- Il
RoadSnappedLocationProvider
può essere utilizzato per ottenere la risposta posizione attuale agganciata se la navigazione non è in primo piano? - L'SDK Navigation supporta il geofencing?
- Posso disattivare le notifiche quando l'app Navigazione è in background?
- Come faccio a vedere il log delle transazioni conservato da Google?
Personalizzazione dell'interfaccia utente
- Posso codificare a colori l'opzione migliore per il percorso?
- L'SDK di navigazione può se mostri l'orario di arrivo stimato per la destinazione finale.
- Come faccio a nascondere gli aggiornamenti sull'orario di arrivo stimato?
- Quali personalizzazioni dell'interfaccia utente sono disponibili per le schede di intestazione e piè di pagina?
Routing
- Posso indicare un percorso specifico a un utente o rimuovere percorsi alternativi?
- Posso mostrare all'utente un'etichetta diversa per la destinazione rispetto alla località di destinazione predefinita?
- Posso utilizzare l'SDK Navigation per monitorare le deviazioni da un percorso definito?
- L'utente può uscire dalla navigazione senza per completare il percorso?
Simulatore
Workflows
Servizi di mobilità
- In che modo l'utilizzo dell'SDK di navigazione è diverso per i clienti di Mobility Services?
- Come faccio a sapere se sono cliente di Servizi di mobilità?
- Come viene fatturato l'SDK Navigation per i clienti di Mobility Services?
- Quale SDK di navigazione Le API devono essere utilizzate solo dai clienti di Mobility Services?
- Se sono un cliente di Servizi di mobilità, posso utilizzare anche un'implementazione non di Servizi per la mobilità dell'SDK di navigazione?
Dettagli del prodotto
-
La tua app deve implementare una finestra di dialogo con la notifica relativa ai Termini di servizio dell'SDK Navigation che ogni utente deve accettare. Questa finestra di dialogo offre all'utente la possibilità di accettare i Termini di servizio. Un file di testo dei termini è fornito con l'SDK Navigation.
Usa
NavigationApi.showTermsAndConditionsDialog
per visualizzare la finestra di dialogo contenente i termini. - Tutte le lingue supportate da Google Maps Mobile vengono automaticamente disponibili per l'SDK di navigazione. Un dispositivo ha una lingua di sistema predefinita e un'app non può modificare questa impostazione. ma l'app ha accesso a oltre 70 lingue.
-
Sì. Una volta avviato,
LocationListener
continua a eseguire in background. L'app continua ad agganciarsi alla posizione e mantiene l'orientamento. -
Sì. Quando un percorso viene creato o modificato,
RouteChangeListener
fornisce polilinee. - No, l'SDK di navigazione non richiede Google Maps Mobile da installare sul dispositivo.
- No, l'SDK di navigazione non fornisce questa funzionalità al momento nel tempo.
- Sì. La direzione del traffico è disponibile e visualizzata per impostazione predefinita.
- Quali versioni del JDK sono supportate dall'SDK di navigazione?
- L'SDK di navigazione supporta le versioni LTS di Java SE supportate attivamente da Oracle. Queste versioni sono indicate come dotate di assistenza Premier nella Roadmap dell'assistenza Oracle Java SE.
Rete e connettività
- In che modo l'SDK Navigation gestisce una scarsa connettività di rete?
- L'SDK di navigazione prememorizza il percorso per ogni viaggio. Le informazioni prememorizzate nella cache includono informazioni di routing per 15-20 minuti, e percorsi alternative nel caso in cui l'utente si discosti dal percorso. L'SDK Navigation approssima la posizione utilizzando il GPS e i sensori del dispositivo.
- In che modo l'SDK di navigazione gestisce i segnali GPS scarsi o persi?
-
Dopo l'avvio della navigazione e l'SDK di navigazione riceve Segnale GPS almeno una volta, verrà visualizzato il messaggio "Ricerca GPS in corso..." messaggio nelle seguenti situazioni:
- Se sono trascorsi più di 10 secondi dall'ultima volta che ha ricevuto un segnale GPS.
- Se la posizione del percorso si è spostata di più di 500 m dall'ultima volta che ha ricevuto un segnale GPS.
Se l'SDK non riceve il segnale GPS per un lungo periodo di tempo, l'avanzamento lungo il percorso, indicato nell'app dalla posizione dello chevron, può rallentare fino all'arresto completo. In questo caso, lo chevron sulla mappa rimarrà nella posizione indicata dall'ultimo segnale GPS. L'SDK non uscirà automaticamente dalla modalità di navigazione se non ricevi un segnale GPS. Tuttavia, potrebbe non essere in grado di fornire indicazioni finché non riceve di nuovo un segnale.
- È disponibile una modalità offline?
- No, l'SDK di navigazione non offre una modalità offline; Tuttavia, l'SDK fornisce informazioni pre-memorizzate nella cache per un viaggio.
Dati
- Posso recuperare tutte le fermate/destinazioni di un viaggio prima di avviare il percorso?
-
Sì. Per recuperare le indicazioni stradali per un percorso, chiama
Navigator.getRouteSegments()
. - Le indicazioni stradali passo passo sono disponibili all'inizio di un percorso?
- Sì. L'SDK Navigation fornisce un elenco di segmenti di percorso. Inoltre, l'utente può scorrere la scheda delle indicazioni stradali nell'intestazione per vedere ogni manovra.
- Come viene comunicata l'ora di arrivo stimata agli utenti dell'app?
-
Per fornire informazioni sull'orario di arrivo stimato agli utenti dell'app:
- Recupera il tempo e la distanza per tutti i waypoint utilizzando
Navigator.getTimeAndDistanceList()
. - Inoltra queste informazioni all'applicazione client come faresti per l'orario di arrivo stimato del conducente.
- Recupera il tempo e la distanza per tutti i waypoint utilizzando
-
RoadSnappedLocationProvider
può essere utilizzato per ottenere la risposta dell'utente posizione attuale agganciata se la navigazione non è in primo piano? -
Sì. Il
RoadSnappedLocationProvider
viene eseguito sfondo per impostazione predefinita. - L'SDK di navigazione supporta il geofencing?
-
No. Nel contesto della navigazione,
remainingTimeOrdistanceChangeListener
ha un vantaggio su un recinto virtuale. Il recinto virtuale potrebbe non tenere conto e potrebbe non essere centrata sul punto esatto in cui mentre l'utente sta navigando.Puoi approssimare questa funzionalità utilizzando
remainingTimeOrdistanceChangeListener
.- Imposta la soglia per determinare la frequenza dei callback.
- Controlla la distanza rimanente per raggiungere la destinazione.
Ad esempio, se imposti la soglia su 100 m, ricevi una richiamata quando la distanza dalla destinazione cambia di 100 m. Man mano che la distanza diminuisce, puoi aggiornare questa soglia impostandola su un valore inferiore e ricevere callback più frequenti. Quindi, controlla la distanza rimanente determinare se sei abbastanza vicino al punto di partenza/arrivo.
- Posso disattivare le notifiche quando l'app di navigazione è in background?
-
Sì. Usa
Navigator.setHeadsUpNotificationEnabled
per controllare le notifiche. Questo metodo ha un argomento booleano.FALSE
disattiva le notifiche;TRUE
attiva le notifiche. -
Il registratore delle transazioni monitora gli spostamenti e gli abbandoni con un ID univoco, che Google registra per l'analisi del prodotto. Se sei un cliente di Servizi per la mobilità, Google consiglia di implementare Da
NavigationTransactionRecorder
a registrare un record delle tue transazioni.
Personalizzazione dell'interfaccia utente
- Posso assegnare un codice colore all'opzione di percorso migliore?
- No. Al momento non è supportata la codifica a colori di un'opzione di percorso specifica.
- L'SDK Navigation può mostrare l'orario di arrivo stimato per la destinazione finale?
-
Sì. Utilizza i seguenti metodi:
- Recupera il tempo e la distanza per tutti i waypoint utilizzando
Navigator.getTimeAndDistanceList()
. - Nascondi l'orario di arrivo stimato della tappa corrente utilizzando
NavigationFragment.setEtaCardEnabled(false)
. - Mostra l'orario di arrivo stimato alla destinazione finale.
- Recupera il tempo e la distanza per tutti i waypoint utilizzando
- Come faccio a nascondere gli aggiornamenti sull'orario di arrivo stimato?
-
Puoi disattivare le schede dell'orario di arrivo stimato chiamando il numero
navigationView.setEtaCardEnabled(false)
. -
Utilizza
StylingOptions
per impostare lo stile del colore dello sfondo. Per nascondere o mostrare l'intestazione e piè di pagina, usa isetHeaderEnabled
esetFooterEnabled
funzioni per i membri diNavigationFragment
.
Routing
- Posso fornire un percorso specifico a un utente o rimuovere percorsi alternativi?
- No. Per impostazione predefinita, vengono forniti più percorsi e quello più veloce ha la priorità. Puoi modificare il percorso predefinito aggiungendo preferenze, come "evitare autostrade e pedaggi", alla tua richiesta. L'aggiunta di waypoint influisce anche sul percorso.
- Posso mostrare all'utente dell'app un'etichetta diversa da quella predefinita per la destinazione località di destinazione?
-
Sì. Crea un
Marker
con un titolo personalizzato per la destinazione e la latitudine/longitudine. L'SDK Navigation mostra il titolo personalizzato e le coordinate suNavigationMap
. - Posso utilizzare l'SDK Navigation per monitorare le deviazioni da un percorso definito?
-
Sì. Usa
Navigator.setRouteChangedListener
per ricevere notifiche quando un itinerario cambia o quando ne viene consigliato uno nuovo:- Registra un ascoltatore che controlla la posizione del dispositivo lungo il percorso
utilizzando il metodo
Navigator.setRouteChangedListener
. - Aggiungi il codice al gestore dell'evento di callback
onRouteChanged
:- Invia un messaggio all'utente dell'app con informazioni aggiornate su orario di arrivo stimato e distanza.
- Monitora la posizione del dispositivo.
- [Facoltativo] Aggiungi altre funzionalità richieste dalla tua app per gestire la situazione in cui l'utente non segue il percorso prescritto.
- Registra un ascoltatore che controlla la posizione del dispositivo lungo il percorso
utilizzando il metodo
-
Sì. Chiama il metodo
Navigator.stopGuidance()
per interrompi la navigazione.
Simulatore
- Il simulatore supporta le modifiche al percorso?
-
Sì. Chiama
simulateLocationsAlongNewRoute
per simulare un viaggio che include una modifica del percorso. Il metodosimulateLocationsAlongExistingRoute
ignora le modifiche al percorso esistente.
Workflows
- Come faccio a ignorare la notifica dopo aver chiuso un'attività che contiene un frammento di navigazione?
-
La notifica di navigazione rimane visibile durante la navigazione, quando l'attività è chiusa. Quando il veicolo arriva alla destinazione, la navigazione si interrompe e la notifica scompare.
Per gestire i clic sulla notifica, utilizza
Navigator.startGuidance(intent resumeIntent)
. L'eventoresume intent
si attiva quando l'utente dell'app fa clic sulla notifica. In genere,Navigator.startguidance(getIntent())
viene chiamato dalla sezione Attività principale, che richiama l'attività quando l'utente dell'app fa clic sulla notifica.
Servizi di mobilità
I servizi di mobilità di Google Maps Platform offrono una raccolta di API e SDK per supportare le esigenze delle aziende di trasporto e logistica. Per i clienti di Mobility Services, l'SDK di navigazione viene in genere utilizzato insieme ai servizi correlati per l'ottimizzazione dei percorsi, la spedizione, il monitoraggio delle attività, l'analisi del parco risorse e altro ancora. Anche l'SDK di navigazione viene fatturato in modo diverso per i clienti di Servizi di mobilità. Per saperne di più, consulta la documentazione di Mobility Services.
I prodotti per la mobilità sono attualmente disponibili solo per alcuni clienti. Per saperne di più, contatta il tuo rappresentante di vendita.
ReportBillableEvent
nel codice. Solo i clienti di Mobility Services devono chiamare il metodo ReportBillableEvent
.
Nell'SDK Navigation sono presenti diverse API destinate esclusivamente all'utilizzo da parte dei clienti di Mobility Services, a cui Google fattura su base transazionale. Se non sei un cliente di Servizi di mobilità, i seguenti metodi sono autonomi:
Sì, i clienti dei Servizi di mobilità possono utilizzare le implementazioni dei servizi di mobilità e di altri servizi di navigazione dell'SDK di navigazione. Tuttavia, puoi utilizzare un solo tipo di implementazione in un'app alla volta. Devi inoltre creare un nuovo progetto Google Cloud, un nuovo account di fatturazione e una nuova chiave API, separati da quelli che utilizzi con l'implementazione dei Servizi di mobilità. Per ulteriori informazioni, consulta la panoramica della configurazione dell'SDK Navigation.
Per ulteriori informazioni sull'utilizzo di un'implementazione non mobile dell'SDK di navigazione, inclusa la migrazione di un'app da un tipo di implementazione all'altro, contatta il rappresentante Google per l'account.
Nota: se attualmente non sei un cliente di Mobility Services e ti interessa saperne di più sulla raccolta di API e SDK di Mobility Services, contatta il team di vendita di Google Maps Platform.