Maps SDK for Android può pubblicare l'immagine bitmap di una mappa, offrendo un'interattività limitata per l'utente. Questa è chiamata mappa in modalità Lite.
Esempi di codice
Il repository ApiDemos su GitHub include esempi che dimostrano l'utilizzo della modalità Lite:
- LiteDemoActivity - Java: nozioni di base sull'utilizzo di una mappa in modalità Lite in Java
- LiteDemoActivity - Kotlin: nozioni di base sull'utilizzo di una mappa in modalità Lite in Kotlin
- LiteListDemoActivity - Java: per visualizzare le mappe in modo efficiente in ListView con modalità Lite in Java
- LiteListDemoActivity - Kotlin: visualizzazione efficiente delle mappe in ListView con modalità Lite in Kotlin
Panoramica della modalità Lite
Una mappa in modalità Lite è l'immagine bitmap di una mappa in una posizione e con lo zoom specificati livello. La modalità Lite supporta tutti i tipi di mappe (normali, ibride, satellitari, rilievo) e un sottoinsieme delle funzionalità fornite dall'API completa. Modalità Lite è utile quando vuoi fornire un numero di mappe in un ruscello oppure una mappa che è troppo piccolo per supportare un'interazione significativa.
Gli utenti che visualizzano la mappa non possono eseguire lo zoom o la panoramica della mappa. Le icone sulla mappa danno Gli utenti possono visualizzare la mappa nell'app mobile Google Maps e richiedere l'accesso indicazioni stradali.
Aggiunta di una mappa in modalità Lite
La modalità Lite utilizza le stesse classi e interfacce della versione completa di Google Maps per Android
tramite Google Cloud CLI
o tramite l'API Compute Engine. Puoi impostare una GoogleMap
in modalità Lite nei seguenti modi
modi:
- Come attributo XML per
MapView
oMapFragment
- Oppure nell'oggetto
GoogleMapOptions
Come attributo XML per MapView
o MapFragment
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:map="http://schemas.android.com/apk/res-auto"
android:name="com.google.android.gms.maps.MapFragment"
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
map:cameraZoom="13"
map:mapType="normal"
map:liteMode="true"/>
Nell'oggetto GoogleMapOptions
Kotlin
val options = GoogleMapOptions() .liteMode(true)
Java
GoogleMapOptions options = new GoogleMapOptions() .liteMode(true);
Per maggiori dettagli sull'impostazione dello stato iniziale della mappa, consulta la guida al map dell'oggetto.
Tentativo di avviare una richiesta di visualizzazione mappa o di indicazioni stradali
Per impostazione predefinita, una barra degli strumenti in basso a destra della mappa contiene icone che
fornire l'accesso a una richiesta di visualizzazione della mappa o di indicazioni stradali in Google Maps per dispositivi mobili
dell'app. Puoi disattivare la barra degli strumenti richiamando
UiSettings.setMapToolbarEnabled(false)
Per ulteriori informazioni
, consulta la documentazione relativa alla barra degli strumenti.
Inoltre, per impostazione predefinita, quando un utente tocca la mappa, l'API avvia l'app mobile di Google Maps
dell'app. Puoi eseguire l'override di questa opzione utilizzando GoogleMap.setOnMapClickListener()
per
e impostare il tuo listener. Puoi anche disattivare gli eventi di clic sulla mappa, richiamando
setClickable()
nella visualizzazione che contiene MapView
o MapFragment
. Per
i dettagli di queste due tecniche, consulta la documentazione relativa agli eventi.
Eventi del ciclo di vita
Quando utilizzano l'API in modalità completamente interattiva, gli utenti del corso MapView
devono inoltrare tutti i metodi del ciclo di vita delle attività ai metodi corrispondenti
nel corso MapView
. Esempi di metodi per il ciclo di vita includono
onCreate()
, onDestroy()
, onResume()
e onPause()
.
Se utilizzi il corso MapView
in modalità Lite, gli eventi del ciclo di vita dell'inoltro vengono
facoltativo, tranne che nei seguenti casi:
- È obbligatorio chiamare
onCreate()
, altrimenti non verrà visualizzata alcuna mappa. - Se desideri mostrare il punto La mia posizione sulla mappa in modalità Lite e utilizza lo
origine della posizione predefinita, dovrai chiamare
onResume()
eonPause()
, perché l'origine posizione si aggiornerà solo tra queste chiamate. Se utilizzi la tua origine posizione, non è necessario chiamare questi due metodi.
Funzionalità dell'API supportate
La tabella seguente descrive il comportamento di una mappa in modalità Lite per ogni area funzionalità dell'API. Se un'app chiama un metodo non supportato in modalità Lite, l'API registrerà un messaggio di avviso.
Funzionalità | |
---|---|
Tipi di mappe | Supportato? Sì
La seguente mappa
tipi sono disponibili tramite GoogleMapOptions.mapType() e
GoogleMap.setMapType() : MAP_TYPE_NORMAL ,
MAP_TYPE_SATELLITE , MAP_TYPE_TERRAIN
MAP_TYPE_HYBRID e MAP_TYPE_NONE |
Polilinee, poligoni, cerchi | Supportato? Sì
La funzionalità in modalità Lite
shapes corrisponda
l'API completa. |
Projection | Supportato? Sì
La funzionalità in modalità Lite
Proiezione
corrisponde all'API completa. |
La mia posizione | Supportato? Sì
La funzionalità in modalità Lite
Livello La mia posizione
corrisponde all'API completa. |
Spaziatura interna mappa | Supportato? Sì
Il supporto della modalità Lite
spaziatura della mappa
corrisponde all'API completa. |
Finestre informative | Supportato? Sì
Se imposti il valore title() di un indicatore, il valore predefinito
finestra informativa
vengono visualizzati quando l'utente tocca l'indicatore. Puoi mostrare la finestra informativa
in modo programmatico chiamando showInfoWindow() sull'indicatore.
Puoi anche creare finestre informative personalizzate tramite
interfaccia di InfoWindowAdapter . |
Stili di mappa base personalizzati | Supportato? Parzialmente
Maps SDK for Android supporta
stile personalizzato di
la mappa base. La modalità Lite supporta solo stili personalizzati basati su JSON, non
stili basati su cloud che richiedono un ID mappa per eseguire il rendering di una mappa con stili.
La modalità Lite non supporta neanche l'impostazione
combinazione di colori della mappa
per usare la modalità Buio.
|
Indicatori | Supportato? Parzialmente
Puoi aggiungere un indicatore
e rispondere a un evento di clic. Puoi anche aggiungere
icone degli indicatori. Non è possibile trascinare un indicatore. Indicatori su un
Le mappe in modalità Lite sono piatte e non possono essere ruotate. |
Posizione della fotocamera, zoom e animazione | Supportato? Parzialmente
Puoi impostare l'obiettivo della videocamera e lo zoom, ma non l'inclinazione o l'orientamento.
Il livello di zoom viene arrotondato al numero intero più vicino in modalità Lite.
Chiamare La chiamata a |
Mappare gli eventi | Supportato? Parzialmente
La modalità Lite supporta
Per disattivare gli eventi di clic su una mappa in modalità Lite, puoi chiamare
Per maggiori dettagli, consulta eventi documentazione. |
Mappe ed edifici di interni | Supportato? No
La modalità Lite mostra gli stessi riquadri della
API Maps Static.
Ciò significa che se la planimetria interna è integrata nel riquadro predefinito,
che verrà visualizzato. In caso contrario, non succederà. Inoltre, non puoi modificare il livello
o manipolare un selettore di livelli. |
Livello di traffico | Supportato? No
GoogleMap.setTrafficEnabled() non supportato
in modalità Lite. |
Overlay del suolo | Supportato? No
GoogleMap.addGroundOverlay() non è supportato nella versione Lite
. |
Overlay riquadro | Supportato? No
GoogleMap.addTileOverlay() non è supportato nella versione Lite
. |
Gesti | Supportato? No
La modalità Lite non supporta i gesti. Attivazione e disattivazione dei gesti
non avranno alcun effetto. |
Street View | Supportato? No
Street View è
non supportata in modalità Lite. |