Panoramica
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
L'SDK Navigation per Android aggiunge funzionalità di navigazione all'SDK Maps per Android. Se la tua applicazione Android basata su Google Maps
richiede funzionalità di navigazione, deve dipendere dall'SDK Navigation per Android.
Detto questo, la maggior parte delle funzioni di Maps SDK for Android si comporta allo stesso modo
nell'SDK Navigation per Android. Vi accedi utilizzando lo stesso pacchetto com.google.android.gms.maps
, indipendentemente dalla dipendenza SDK che utilizzi.
Ciò significa che, se in precedenza la tua app dipendeva dall'SDK Maps per Android, puoi modificare la dipendenza con l'SDK Navigation per Android senza influire sulla funzionalità esistente dell'app, con due eccezioni degne di nota:
- API che generano un'eccezione.
- API che non funzionano in NavSDK e non hanno alcun impatto quando vengono chiamate.
Queste eccezioni sono descritte di seguito.
API che generano un'eccezione
La seguente funzione genera un'eccezione se la tua applicazione la attiva:
API senza funzionalità in SDK Navigation
Le seguenti API non hanno funzionalità nell'SDK Navigation, ma non hanno
alcun impatto se il tuo codice le chiama. Rientrano nelle seguenti categorie:
- API per l'attività del dispositivo indossabile.
- Attiva invece il feed TBT se vuoi questa funzionalità nell'SDK Navigation per Android.
- Altre API.
API per wearable
GoogleMapOptions.ambientEnabled(boolean enabled) normalmente
ti consente di disattivare o attivare la modalità Ambient per
le app per indossabili. Inoltre, i metodi
onEnterAmbient
e
onExitAmbient
sono presenti in MapView e MapFragment, ma non hanno
alcun impatto quando vengono chiamati. Per i dispositivi indossabili, utilizza invece il feed TBT.
Altre API
API destinate esclusivamente all'utilizzo da parte dei clienti di Mobility Services
Nell'SDK Navigation sono presenti diverse API destinate esclusivamente all'utilizzo da parte dei clienti di Mobility Services, a cui Google addebita i costi in base alle transazioni. Se non sei un cliente di Mobility Services, i seguenti metodi non sono operativi:
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-08-31 UTC.
[null,null,["Ultimo aggiornamento 2025-08-31 UTC."],[[["\u003cp\u003eThe Navigation SDK for Android provides navigation features on top of the Maps SDK for Android and is a required dependency for apps needing navigation.\u003c/p\u003e\n"],["\u003cp\u003eMost Maps SDK functionalities remain the same in the Navigation SDK, accessible via the \u003ccode\u003ecom.google.android.gms.maps\u003c/code\u003e package.\u003c/p\u003e\n"],["\u003cp\u003eCertain APIs behave differently in the Navigation SDK, either throwing exceptions (like LiteMode) or having no functionality (like wearable APIs and custom LocationSource).\u003c/p\u003e\n"],["\u003cp\u003eFor wearable apps, the TBT feed should be used instead of ambient mode functionalities.\u003c/p\u003e\n"],["\u003cp\u003eSome APIs are exclusively for Mobility Services customers and function as no-ops for other users.\u003c/p\u003e\n"]]],[],null,["# Overview\n\nThe Navigation SDK for Android adds navigation features to the\nMaps SDK for Android. If your Google Maps-powered Android application\nneeds navigation features, it must depend on the Navigation SDK for Android.\n\nThat said, most functions in the Maps SDK for Android behave the same in\nthe Navigation SDK for Android. You access them using the same\n`com.google.android.gms.maps` package, no matter which SDK dependency you use.\nThis means that, if your app previously depended on the\nMaps SDK for Android, you can change its dependency to the\nNavigation SDK for Android without affecting the existing functionality of your app, with\ntwo notable exceptions:\n\n- APIs that throw an exception.\n- APIs that don't function in the NavSDK and have no impact when called.\n\nThese exceptions are described below.\n\nAPIs that throw an exception\n----------------------------\n\nThe following function throws an exception if your application enables it:\n\n- [LiteMode](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/GoogleMapOptions#liteMode(boolean))\n\nAPIs with no functionality in Navigation SDK\n--------------------------------------------\n\nThe following APIs have no functionality in the Navigation SDK, but also have no\nimpact if your code calls them. They fall into the following categories:\n\n- APIs for wearable activity.\n - Enable [TBT feed](/maps/documentation/navigation/android-sdk/tbt-feed) instead if you want this functionality in the Navigation SDK for Android.\n- Other APIs.\n\n### APIs for wearables\n\n[GoogleMapOptions.ambientEnabled(boolean enabled)](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/GoogleMapOptions#ambientEnabled(boolean)) would\nnormally allow you to disable or enable [ambient mode](/maps/documentation/android-sdk/wear#ambient) for\nwearable apps. Additionally,\n[onEnterAmbient](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/MapView#onEnterAmbient(android.os.Bundle))\nand\n[onExitAmbient](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/MapView#onExitAmbient())\nmethods exist in [MapView](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/MapView) and [MapFragment](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/MapFragment), but have\nno impact when called. For wearables, use the [TBT feed](/maps/documentation/navigation/android-sdk/tbt-feed) instead.\n\n### Other APIs\n\n- [Setting a custom LocationSource](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/GoogleMap#setLocationSource(com.google.android.gms.maps.LocationSource)) does nothing in the NavSDK.\n- All [MapsInitializer](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/MapsInitializer) APIs.\n- [RuntimeRemoteException](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/model/RuntimeRemoteException).\n\nAPIs that are only intended for use by Mobility Services customers\n------------------------------------------------------------------\n\n\nThere are several APIs in the Navigation SDK that are only intended for use by [Mobility Services](/maps/documentation/transportation-logistics/mobility) customers, who are billed by Google on a per-transaction basis. If you are not a Mobility Services customer, the following methods are no-ops:\n\n- [`NavigationTransactionRecorder.pickup()`](/maps/documentation/navigation/android-sdk/reference/com/google/android/libraries/navigation/NavigationTransactionRecorder#pickup(com.google.android.libraries.navigation.Waypoint,%20java.util.List%3Cjava.lang.String%3E))\n- [`NavigationTransactionRecorder.dropoff()`](/maps/documentation/navigation/android-sdk/reference/com/google/android/libraries/navigation/NavigationTransactionRecorder#dropoff(com.google.android.libraries.navigation.Waypoint,%20java.util.List%3Cjava.lang.String%3E))\n- [`NavigationTransactionRecorder.generatedTransactionId()`](/maps/documentation/navigation/android-sdk/reference/com/google/android/libraries/navigation/NavigationTransactionRecorder#public-static-string-generatetransactionid)\n- [`Navigator.fetchRouteInfo()`](/maps/documentation/navigation/android-sdk/reference/com/google/android/libraries/navigation/Navigator#public-abstract-listenableresultfuturerouteinfo-fetchrouteinfo-waypoint-waypoint,-routingoptions-routingoptions)\n- [`Navigator.setTransactionIds()`](/maps/documentation/navigation/android-sdk/reference/com/google/android/libraries/navigation/Navigator#public-abstract-void-settransactionids-liststring-transactionids)"]]