Uso de PlaceFilter para Android con la API de Google Places
Estoy intentando usar la API de Google Places y me gustaría filtrar mi búsqueda solo a tipos de gimnasio.
Estoy utilizando el código que aparece en https://developers.google.com/places/.
- en Android google maps api v2 para 4.0, muestre las rutas de la ubicación actual a lat lat largo
- ¿Cómo añadir la versión de servicios de Google Play al manifiesto de tu aplicación?
- Cómo mostrar mi ubicación actual en Google Map Android mediante el cliente API de google
- ¿Cómo utilizar google map V2 dentro de fragmento?
- GooglePlayServicesUtil.getErrorDialog es nulo
public void onPickButtonClick(View v) { // Construct an intent for the place picker try { PlacePicker.IntentBuilder intentBuilder = new PlacePicker.IntentBuilder(); Intent intent = intentBuilder.build(this); // Start the intent by requesting a result, // identified by a request code. startActivityForResult(intent, REQUEST_PLACE_PICKER); } catch (GooglePlayServicesRepairableException e) { // ... } catch (GooglePlayServicesNotAvailableException e) { // ... } } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == REQUEST_PLACE_PICKER && resultCode == Activity.RESULT_OK) { // The user has selected a place. Extract the name and address. final Place place = PlacePicker.getPlace(data, this); final CharSequence name = place.getName(); final CharSequence address = place.getAddress(); String attributions = PlacePicker.getAttributions(data); if (attributions == null) { attributions = ""; } mViewName.setText(name); mViewAddress.setText(address); mViewAttributions.setText(Html.fromHtml(attributions)); } else { super.onActivityResult(requestCode, resultCode, data); } }
Lo que estaba tratando de hacer era crear un filtro como el de abajo y de alguna manera agregar que (placeFilter) a la intención.
PlacePicker.IntentBuilder intentBuilder = new PlacePicker.IntentBuilder(); PlaceFilter placeFilter; ArrayList<String> restictToGyms = new ArrayList<>(); restictToGyms.add("44"); placeFilter = new PlaceFilter(false, restictToGyms); intent.SOMEHOWADD(placeFilter); Intent intent = intentBuilder.build(this);
Pero no estoy seguro de cómo agregar este filtro a la intención. De hecho, no estoy seguro si esta es la manera correcta de hacerlo. Se apreciarán todos los punteros. ¡Gracias!
- ¿Cuál es la forma sugerida de implementar superposiciones en v2 de la API de Google Maps para Android?
- ArrayIndexOutOfBounds en el dibujo de la polilínea de Android
- Android google maps v2 problemas de rendimiento
- Google maps - posición de la cámara con marcador en la parte inferior
- Android Google Maps V2 - Tarjeta Sd como proveedor de mosaico
- Cómo crear un marcador de mapa de bits personalizado con Android mapa API v2
- ¿Cómo descargar Google Play Services en un emulador de Android?
- Hacer polígonos que se pueden hacer clic en Google Maps (para Android)
He estado buscando hacer lo mismo. Desafortunadamente no parece posible- el PlaceFilter tiene lugar ids, no tipos. La clase PlaceFilter es definitiva por lo que no se puede ampliar (odio cuando los autores de API hacen que las clases sean finales, casi nunca hay una razón para hacerlo). Debe realizar la llamada y hacer el filtrado a través de un bucle después de que el resultado vuelva.
Consulte esta https://developer.android.com/reference/com/google/android/gms/location/places/Place.html
El gimnasio es Place.TYPE_GYM
- ¿Los emuladores o Genymotion apoyan el ART, el sustituto dalvik?
- Los datos no se guardan en Firebase desde la aplicación para Android