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 del modo in cui viene inizializzata l'app. Questa guida spiega le differenze tra le versioni e come selezionare le versioni da attivare nella tua app.
Numeri di versione dell'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à aggiunte in una determinata release. Ad esempio, il completamento automatico (nuovo) è disponibile solo nell'SDK nella versione 3.5.0 o successive.
Per ulteriori informazioni sulle modifiche introdotte in ogni versione dell'SDK, consulta le note di rilascio dell'SDK Places per Android.
Versioni dell'API Places per l'SDK Places for Android
Oltre a specificare un numero di versione dell'SDK, devi anche selezionare il servizio API Places chiamato dall'SDK nella console Google Cloud: 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, come Autocompletamento o Autocompletamento (nuovo). Sebbene tu possa specificare un solo numero di versione dell'SDK, puoi attivare contemporaneamente sia l'API Places sia l'API Places (nuova) nella 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, ti consigliamo di attivare l'API Places (nuova) e di 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:
- Nel tuo progetto Google Cloud, abilita l'API Places, l'API Places (nuova) o entrambe. Per ulteriori informazioni, consulta Attivare le API.
- Nelle restrizioni relative alle chiavi API, abilita l'API Places, l'API Places (nuova) o entrambe. Per ulteriori informazioni, vedi Limitare le chiavi API.
Nel file build.gradle a livello di app, specifica un numero di versione. Per ulteriori informazioni, consulta la sezione Installazione.
Inizializza l'app chiamando il metodo
Places.initializeWithNewPlacesApiEnabled()
oPlaces.initialize()
.
Per ulteriori informazioni sulla selezione del servizio API Places, vedi Configurare il progetto Google Cloud.
Funzionalità dell'SDK disponibili in ogni versione
La tabella seguente mostra le versioni dell'SDK e dell'API richieste per ogni funzionalità dell'SDK:
Funzionalità | API Places abilitata nella chiave API | Metodo di inizializzazione | Versione SDK minima |
---|---|---|---|
Completamento automatico (novità) | API Places (Novità) | initializeWithNewPlacesApiEnabled() |
3.5.0 |
Place Details (versione nuova) | API Places (Novità) | initializeWithNewPlacesApiEnabled() |
3.3.0 |
Ricerca nelle vicinanze (novità) | API Places (Novità) | initializeWithNewPlacesApiEnabled() |
3.5.0 |
Place Photos (versione nuova) | API Places (Novità) | initializeWithNewPlacesApiEnabled() |
3.4.0 |
Ricerca di testo (novità) | API Places (Novità) | initializeWithNewPlacesApiEnabled() |
3.3.0 |
Place Autocomplete | API Places | initialize() |
|
Luogo attuale | API Places | initialize() |
|
Dettagli sul luogo | API Places | initialize() |
|
Place Photos | API Places | initialize() |
Considerazioni per la scelta delle versioni da attivare
Per decidere quale versione scegliere, tieni presente quanto segue:
- Se sei un nuovo cliente che sta iniziando a utilizzare Places SDK for Android, inizia con l'API Places (nuova) e il nuovo SDK.
- Se sei già un cliente, puoi continuare a utilizzare l'SDK esistente. Tuttavia, per usufruire dei miglioramenti delle prestazioni e delle funzionalità del nuovo SDK Places per Android, devi utilizzare il nuovo SDK. Non è necessaria alcuna migrazione per passare al nuovo SDK. Segui semplicemente i passaggi descritti in Selezionare la versione dell'SDK e i servizi API.
- In Places SDK for Android (nuovo), i token sessione sono disponibili a partire dalla versione 3.5.0. Per ulteriori informazioni, consulta Token di sessione.
- Le chiamate effettuate utilizzando i widget di completamento automatico dei luoghi chiamano sempre Placeautocomplete, non Placeautocomplete (Nuovo); le chiamate ai widget non sono interessate dal metodo di inizializzazione.
- Posiziona foto (nuovo) restituisce solo un URI per un'immagine bitmap, mentre Posiziona foto restituisce solo un'immagine bitmap.
- Posizione attuale è disponibile solo nell'SDK Places for Android, non nell'SDK Places for Android (nuovo).
Miglioramenti nell'SDK Places per Android (novità)
Questa sezione illustra le funzionalità principali aggiunte a Places SDK for Android (nuovo).
Implementato sulla piattaforma standard di Google Cloud
Places SDK for Android (nuovo) è implementato nell'infrastruttura del servizio su Google Cloud. Questa implementazione offre una piattaforma più sicura e affidabile. Questo design standard offre un livello di coerenza tra gli SDK che migliora l'efficienza dello sviluppo con Places SDK for Android (nuovo).
Prestazioni migliorate
Places SDK for Android (nuovo) offre prestazioni migliorate, quindi vale la pena sostituire le app che utilizzano l'SDK esistente.
Nuove funzionalità
Places SDK for Android (nuovo) include le versioni più recenti di tutte le funzionalità dell'SDK:
- Completamento automatico (novità)
- Place Details (versione nuova)
- Ricerca nelle vicinanze (novità)
- Place Photos (versione nuova)
- Ricerca di testo (novità)
Nuovo servizio di ricerca di testo
La ricerca di testo (novità) restituisce informazioni su un insieme di luoghi in base a una stringa, ad esempio "pizzeria a New York" o "negozi di scarpe vicino a Ottawa" o "123 Via Principale". Il servizio risponde con un elenco di luoghi corrispondenti alla stringa di testo e a eventuali bias di geolocalizzazione impostati.
Nuovi dati di risposta aggiunti a Dettagli luogo (novità) e Foto del luogo (novità)
Dettagli dei luoghi (novità) ora include la nuova classe Recensione nell'oggetto
Place
della risposta. La classe Place contiene il nuovo metodogetReviews()
per supportare questo campo. ChiamagetReviews()
per visualizzare fino a cinque recensioni di un luogo.Inserisci foto (nuova) aggiunge il
AuthorAttributions
al gruppoPhotoMetadata
.AuthorAttributions
contiene unList
diAuthorAttribution
oggetti.
Nuova risposta URI aggiunta a Foto dei luoghi (novità)
Ora puoi utilizzare Inserisci foto (nuovo) per restituire un URI a una bitmap immagine. In precedenza, potevi restituire solo la bitmap dell'immagine stessa.
Prezzi semplificati
I prezzi sono semplificati con il nuovo SDK Places per Android, in modo da pagare solo per i dati che utilizzi. I prezzi semplificati vengono implementati utilizzando gli elenchi di campi, chiamati anche maschere di campo.
Con i dettagli dei luoghi e la ricerca di testo, utilizzi gli elenchi di campi per controllare l'elenco di 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 assicurarti di non richiedere dati non necessari, il che consente di evitare tempi di elaborazione e costi di fatturazione non necessari.
Per informazioni dettagliate sui prezzi di entrambi gli SDK, consulta la sezione Utilizzo e fatturazione.
Tipi di luoghi espansi
Il nuovo SDK aggiunge i tipi di luoghi mostrati nella tabella seguente. Questi tipi vengono resi disponibili nell'ambito della risposta di Place Details e Text Search. Puoi anche utilizzare questi nuovi tipi, oltre a quelli esistenti, in una ricerca con la ricerca di testo. 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 | fattoria | 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 | sarto |
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 | parco giochi | 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 |
Oltre a questi nuovi tipi, l'API Places (nuova) ha spostato i seguenti tipi dalla tabella 2 dell'API Places alla tabella A dell'API Places (nuova). Ciò significa che ora puoi utilizzare questi tipi nell'ambito di una ricerca:
country
administrative_area_level_1
administrative_area_level_2
postal_code
locality