Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Cómo mostrar el marcador en los mapas lanzados por geo uri ¿Intención?

Tengo una aplicación donde quiero mostrar diferentes ubicaciones (una en el momento, seleccionada por la entrada del usuario) mediante el lanzamiento de Google Maps con sus geocodías específicas.

Actualmente estoy usando esto: (con lat real y valores largos por supuesto)

  • Eclipse con Android SDK faltan elementos de menú
  • Cómo agregar org.apache.commons.lang3 a AndroidStudio con gradle
  • ¿Cómo puedo restaurar mi proyecto a una versión anterior en Android Studio?
  • Cómo limpiar el soporte de superficie cuando el reproductor de medios está terminado?
  • Intención putExtra ArrayList <NameValuePair>
  • Android: ¿Cómo funcionan los UUIDs bluetooth?
  • Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("geo:<lat>,<long>?z=17")); startActivity(intent); 

    Es exactamente lo que quiero, excepto que no muestra ningún indicador o marcador para el punto especificado. Sólo se centra en su ubicación.

    ¿Hay alguna manera de obtener el marcador o algo más incluido sin utilizar un MapView?

  • ¿Por qué el informe de Android Studio "URI no está registrado"?
  • Eliminar todo después de una parte de una cadena
  • Texto a voz (TTS) -Android
  • Android Studio: auto build como Eclipse
  • ¿Cómo activar la recarga en vivo en reaccionar nativo en android?
  • ¿Dónde puedo encontrar versiones anteriores de Eclipse ADT
  • 7 Solutions collect form web for “Cómo mostrar el marcador en los mapas lanzados por geo uri ¿Intención?”

    Prueba esto:

     Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("geo:<lat>,<long>?q=<lat>,<long>(Label+Name)")); startActivity(intent); 

    Puede omitir (Etiqueta + Nombre) si no desea una etiqueta, y elegirá una basada aleatoriamente en la calle más cercana u otra cosa que considere relevante.

    La respuesta aceptada es correcta, excepto cuando su etiqueta tiene un signo (&) en ella.

    Mirando a Un Identificador Uniforme de Recursos para Ubicaciones Geográficas ('geo' URI) :

    La Sección 5.1 establece:

    Si el URI final debe incluir un componente 'consulta', añada el delimitador de componente "?" Al final del resultado, seguido de la cadena de consulta codificada.

    Desafortunadamente para nosotros, haciendo esto también escapará el '=' que no es lo que queremos. Lo que debemos hacer es esto:

     String label = "Cinnamon & Toast"; String uriBegin = "geo:12,34"; String query = "12,34(" + label + ")"; String encodedQuery = Uri.encode( query ); String uriString = uriBegin + "?q=" + encodedQuery; Uri uri = Uri.parse( uriString ); Intent intent = new Intent(android.content.Intent.ACTION_VIEW, uri ); startActivity( intent ); 

    Hay muchas más opciones para lanzar un mapa de google usando una intención …

      Double myLatitude = 44.433106; Double myLongitude = 26.103687; String labelLocation = "Jorgesys @ Bucharest"; 

    1}

     Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("geo:<" + myLatitude + ">,<" + myLongitude + ">?q=<" + myLatitude + ">,<" + myLongitude + ">(" + labelLocation + ")")); startActivity(intent); 

    2)

     String urlAddress = "http://maps.google.com/maps?q="+ myLatitude +"," + myLongitude +"("+ labelLocation + ")&iwloc=A&hl=es"; Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(urlAddress)); startActivity(intent); 

    3)

      String urlAddress = "http://maps.googleapis.com/maps/api/streetview?size=500x500&location=" + myLatitude + "," + myLongitude + "&fov=90&heading=235&pitch=10&sensor=false"; Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(urlAddress)); startActivity(intent); 

    Esta cadena funciona bien para mí:

     String geoUriString="geo:"+lat+","+lon+"?q=("+head+")@"+lat+","+lon; Uri geoUri = Uri.parse(geoUriString); Log.e(TAG, "String: "+geoUriString); Intent mapCall = new Intent(Intent.ACTION_VIEW, geoUri); startActivity(mapCall); 

    ¿Ha intentado agregar (LocationMarkerName) al geo: uri? Por ejemplo "geo:,? Z = 17 (LocationMarkerName)"

    En Google Maps en Android buscando 23.0980,30.6797 (NamedMarker) parece centrar el mapa y colocar un marcador con el nombre NamedMarker en esa posición.

    Acaba de confirmar el fragmento siguiente de @Kenton Price todavía funciona en Android 4.4

     Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("geo:<lat>,<long>?q=<lat>,<long>(Label+Name)")); startActivity(intent); 

    Solamente he usado Overlays con el MapView para dibujar marcadores en la parte superior de un mapa. Si su vista está mostrando su mapa, podría ser posible simplemente dibujar su marcador en el centro de la pantalla, de la misma manera que dibujaría cualquier imagen en una vista. Sin embargo, el marcador no estaría vinculado a las coordenadas del mapa real, pero si es sólo una vista estática, entonces esto podría hacer.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.