Le funzionalità di Places SDK per Android disponibili nella tua app sono determinate da una combinazione del numero di versione dell'SDK (ad es. 3.5.0) specificato nella configurazione dell'app, delle API abilitate nella chiave API e di come inizializzi l'app. Questa guida spiega le differenze tra le versioni e come selezionare quali versioni abilitare nella tua app.
Numeri di versione SDK
Il numero di versione dell'SDK specificato nel file build.gradle a livello di app determina se la tua app ha accesso alle funzionalità che sono state aggiunte in una determinata release. Ad esempio, Autocomplete (New) è disponibile solo nell'SDK versione 3.5.0 o successive.
Per ulteriori informazioni sulle modifiche introdotte in ogni versione dell'SDK, consulta le note di rilascio di Places SDK for Android.
Versioni dell'API Places per Places SDK for Android
Oltre a specificare un numero di versione dell'SDK, devi anche selezionare il servizio API Places chiamato dall'SDK in Google Cloud Console: API Places o API Places (nuova). Insieme al numero di versione dell'SDK, il servizio API selezionato determina la versione di funzionalità specifiche disponibili nella tua app, ad esempio Completamento automatico o Completamento automatico (Novità). Anche se puoi specificare un solo numero di versione dell'SDK, puoi attivare contemporaneamente sia l'API Places sia l'API Places (nuova) sulla tua chiave API, quindi selezionare il servizio chiamato dall'SDK tramite il metodo utilizzato per inizializzare l'SDK nella tua app. Tuttavia, nella maggior parte dei casi, vorrai attivare l'API Places (nuova) e utilizzare le versioni (nuove) delle funzionalità dell'SDK nella tua app.
Seleziona la versione dell'SDK e i servizi API
Per selezionare le funzionalità dell'SDK disponibili nella tua app, segui questi passaggi:
- Nel tuo progetto Google Cloud, abilita l'API Places, l'API Places (nuova) o entrambe. Per ulteriori informazioni, consulta Abilitare le API
- Nelle limitazioni relative alle chiavi API, abilita l'API Places, l'API Places API (New) o entrambe. Per ulteriori informazioni, consulta la sezione Limitazione delle chiavi API.
Nel file build.gradle a livello di app, specifica un numero di versione. Per maggiori informazioni, consulta la sezione Installazione.
Inizializza la tua app chiamando il metodo
Places.initializeWithNewPlacesApiEnabled()
oPlaces.initialize()
.
Per ulteriori informazioni sulla selezione del servizio API Places, consulta l'articolo sulla configurazione del progetto Google Cloud.
Funzionalità dell'SDK disponibili in ogni versione
La tabella riportata di seguito mostra le versioni di SDK e API richieste per ogni funzionalità dell'SDK:
Funzionalità | API Places abilitata sulla chiave API | Metodo di inizializzazione | Versione minima dell'SDK |
---|---|---|---|
Completamento automatico (novità) | API Places (Novità) | initializeWithNewPlacesApiEnabled() |
3.5.0 |
Dettagli del luogo (novità) | API Places (Novità) | initializeWithNewPlacesApiEnabled() |
3.3.0 |
Ricerca nelle vicinanze (novità) | API Places (Novità) | initializeWithNewPlacesApiEnabled() |
3.5.0 |
Foto del luogo (novità) | API Places (Novità) | initializeWithNewPlacesApiEnabled() |
3.4.0 |
Ricerca testuale (novità) | API Places (Novità) | initializeWithNewPlacesApiEnabled() |
3.3.0 |
Place Autocomplete | API Places | initialize() |
|
Luogo attuale | API Places | initialize() |
|
Dettagli del luogo | API Places | initialize() |
|
Foto del luogo | API Places | initialize() |
Considerazioni sulla scelta delle versioni da attivare
Per decidere quale versione scegliere, considera quanto segue:
- Se sei un nuovo cliente che ha appena iniziato a utilizzare Places SDK per Android, inizia con l'API Places (nuova) e il nuovo SDK.
- Se sei già cliente, puoi continuare a utilizzare l'SDK esistente. Tuttavia, per sfruttare i miglioramenti delle prestazioni e i miglioramenti delle funzionalità di Places SDK for Android (New), ti consigliamo di utilizzare il nuovo SDK. Non è necessaria alcuna migrazione per passare al nuovo SDK; basta seguire i passaggi descritti in Selezionare la versione dell'SDK e i servizi API.
- In Places SDK for Android (New), i token di sessione sono disponibili a partire dalla versione 3.5.0. Per maggiori informazioni, consulta Token di sessione.
- Le chiamate effettuate utilizzando i widget Place Autocomplete chiamano sempre place Autocomplete, non Place Autocomplete (novità); le chiamate ai widget non sono interessate dal metodo di inizializzazione.
- Place Photos (New) restituisce solo un URI a un'immagine bitmap, mentre Place Photos restituisce solo un'immagine bitmap.
- Luogo attuale è disponibile solo in Places SDK per Android, non in Places SDK for Android (novità).
Miglioramenti a Places SDK per Android (novità)
Questa sezione illustra le funzionalità principali aggiunte a Places SDK per Android (novità).
Implementata sulla piattaforma standard di Google Cloud
L'SDK Places per Android (novità) è implementato nell'infrastruttura di servizi su Google Cloud. Questa implementazione offre una piattaforma più sicura e affidabile. Questo design standard garantisce un livello di coerenza tra gli SDK che migliorano l'efficienza dello sviluppo con Places SDK per Android (novità).
Prestazioni migliorate
L'SDK Places per Android (nuovo) offre prestazioni migliori, pertanto è opportuno sostituire le app che utilizzano l'SDK esistente.
Nuove funzionalità
Places SDK per Android (novità) include le versioni più recenti di tutte le funzionalità SDK:
- Completamento automatico (novità)
- Dettagli del luogo (novità)
- Ricerca nelle vicinanze (novità)
- Foto del luogo (novità)
- Ricerca testuale (novità)
Nuovo servizio di ricerca testuale
Ricerca testuale (Nuova) restituisce informazioni su un insieme di luoghi in base a una stringa, ad esempio "pizza a New York" o "negozi di scarpe vicino a Ottawa" o "123 Main Street". Il servizio risponde con un elenco di posizioni corrispondenti alla stringa di testo e gli eventuali bias di località impostati.
Nuovi dati delle risposte aggiunti a Placed Details (Novità) e Place Photo (Novità)
Place Details (Dettagli luogo) (Novità) ora include la nuova classe Review nell'oggetto
Place
di risposta. La classe Place contiene il nuovo metodogetReviews()
per supportare questo campo. ChiamagetReviews()
per restituire fino a cinque recensioni per un luogo.Foto del luogo (Novità) aggiunge
AuthorAttributions
al corsoPhotoMetadata
.AuthorAttributions
contiene unList
di oggettiAuthorAttribution
.
Nuova risposta URI aggiunta a Place Photo (novità)
Ora puoi utilizzare Place Photo (Novità) per restituire un URI a una bitmap dell'immagine. In precedenza potevi restituire solo la bitmap dell'immagine stessa.
Determinazione del prezzo semplificata
I prezzi sono semplificati con Places SDK per Android (novità), in modo che paghi solo per i dati che utilizzi. I prezzi semplificati vengono implementati utilizzando elenchi di campi, chiamati anche maschere di campo.
Con Place Details e Text Search puoi utilizzare gli elenchi di campi per controllare l'elenco dei campi da restituire nella risposta. Ti verranno addebitati solo i dati richiesti. L'utilizzo di un elenco di campi è una buona prassi di progettazione per assicurarsi di non richiedere dati non necessari, evitando così tempi di elaborazione e addebiti superflui.
Per informazioni dettagliate sui prezzi di entrambi gli SDK, consulta Utilizzo e fatturazione.
Tipi di luogo espansi
Il nuovo SDK aggiunge i tipi di luogo mostrati nella seguente tabella. Questi tipi vengono restituiti nell'ambito della risposta a Place Details e alla Ricerca testuale. Puoi anche usare questi nuovi tipi, e quelli esistenti, in una ricerca con Ricerca testuale. I nuovi tipi sono inclusi nella Tabella A.
Tipo | |||
---|---|---|---|
american_restaurant | discount_store | ice_cream_shop | sandwich_shop |
amusement_center | dog_park | indian_restaurant | school_district |
athletic_field | electric_vehicle_charging_station | indonesian_restaurant | seafood_restaurant |
auto_parts_store | event_venue | italian_restaurant | ski_resort |
banquet_hall | extended_stay_hotel | japanese_restaurant | spanish_restaurant |
barbecue_restaurant | farm | korean_restaurant | sporting_goods_store |
barber_shop | agriturismo | lebanese_restaurant | sports_club |
bed_and_breakfast | fast_food_restaurant | Marina | sports_complex |
brazilian_restaurant | ferry_terminal | mercato | steak_house |
breakfast_restaurant | fitness_center | medical_lab | sushi_restaurant |
brunch_restaurant | french_restaurant | mediterranean_restaurant | swimming_pool |
bus_stop | gift_shop | mexican_restaurant | sartoria |
camping_cabin | golf_course | middle_eastern_restaurant | telecommunications_service_provider |
cell_phone_store | greek_restaurant | motel | thai_restaurant |
child_care_agency | grocery_store | national_park | transit_depot |
chinese_restaurant | guest_house | park_and_ride | truck_stop |
coffee_shop | hair_salon | performing_arts_theater | turkish_restaurant |
community_center | hamburger_restaurant | pizza_restaurant | vegan_restaurant |
consulente | eliporto | playground | vegetarian_restaurant |
convention_center | hiking_area | scuola materna | vietnamese_restaurant |
cottage | historical_landmark | private_guest_room | visitor_center |
courier_service | home_improvement_store | ramen_restaurant | wedding_venue |
cultural_center | ostello | resort_hotel | grossista |
dental_clinic | hotel | rest_stop |
Insieme a questi nuovi tipi, l'API Places (nuova) ha spostato i seguenti tipi dalla tabella 2 per l'API Places alla tabella A per l'API Places (nuova). Ciò significa che ora puoi utilizzare i seguenti tipi come parte di una ricerca:
country
administrative_area_level_1
administrative_area_level_2
postal_code
locality