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

Visualizzazione Ricerca avanzata di Place con pulsanti personalizzati
Risultato di Place Search con pulsante personalizzato

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

        

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)
    }
}