Componente Place Search avanzato
La versione avanzata del componente Place Search offre le stesse funzionalità di Place Search Essentials. Ti consente inoltre di configurare i pulsanti di azione del componente e di applicare opzioni di ricerca e filtro alle recensioni e ai contenuti multimediali visualizzati.
Configurazione di Place Search avanzato
Utilizza AdvancedPlaceSearchFragment per accedere alle funzionalità avanzate.
Configurare i pulsanti di azione
Utilizza l'interfaccia PlaceActionProvider di AdvancedPlaceSearchFragment per definire e personalizzare i pulsanti di azione.
Requisiti di attribuzione visiva
Importante: devi indicare chiaramente agli utenti quando un pulsante di azione personalizzato condividerà le informazioni dell'utente con una terza parte diversa da Google. Consulta i requisiti di attribuzione visiva.
L'esempio mostra un'immagine personalizzata che indica chiaramente che le informazioni dell'utente verranno inviate ad "Altostrat".
Applicare le opzioni di ricerca e filtro
Utilizza le interfacce SearchMediaOptions e SearchReviewsOptions di AdvancedPlaceSearchFragment per attivare la ricerca e il filtro di contenuti multimediali o recensioni.
Esempi di Place Search avanzato
Creare un frammento AdvancedPlaceSearch
Kotlin
// Initialize Places first Places.initializeWithNewPlacesApiEnabled(context, API_KEY) // How the fragment is created AdvancedPlaceSearchFragment.newInstance( selectedContent, orientation, R.style.BrandedPlaceDetailsTheme, ) // Fragment supports the same configs that PlaceSearchFragment supported fragment.preferTruncation = false fragment.attributionPosition = AttributionPosition.BOTTOM fragment.selectable = true
Eseguire una ricerca
Kotlin
// Performing a search works the same as with a regular placeSearchFragment. advancedPlaceSearchFragment.configureFromSearchByTextRequest(searchByTextRequest) advancedPlaceSearchFragment.configureFromSearchNearbyRequest(searchNearbyRequest)
Ascoltare i risultati
Kotlin
// attach the existing PlaceSearchFragmentListener to get notified about when places load or are selected from the results list. override fun onAttachFragment(fragment: Fragment) { super.onAttachFragment(fragment) when (fragment) { // Reuse the placeSearchFragmetnListener from the Essentials version is AdvancedPlaceSearchFragment -> fragment.registerListener(placeSearchFragmentListener) // use placeListFragmentListener, its functionally identical but with a new name. is AdvancedPlaceListFragment -> fragment.registerListener(advancedPlaceListFragmentListener) } }