Cómo funciona autolink: map work

Estoy usando el atributo antroid: autoLink = "map" de TextView para ir al mapa y encontrar la dirección asociada con ese textview.

Pero se está comportando de manera irregular y encontrando sólo algunas direcciones . Aquí está el código lo que estoy intentando:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/textViewautoLink" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/autolinktext" android:autoLink="map"></TextView> </LinearLayout> 

Aquí está mi strings.xml

 strings.xml <?xml version="1.0" encoding="utf-8"?> <resources> <string name="autolinktext">1600 Amphitheatre Parkway, Mountain View, CA 94043 </string> </resources> 

El problema es:

Supongamos que estoy escribiendo la cadena anterior, es decir, 1600 Amphitheatre Parkway, Mountain View, CA 94043 entonces su trabajo bien y textView obtiene azul en color y cuando hago clic en itit busca la dirección en el Mapa.

Cuando cambio esta dirección a: 1600 Amphitheatre Parkway, Mumbai, IN, entonces también muestra lo mismo y trata de buscar la dirección, pero como la dirección está mal, no podría encontrarla. Está bien.

Pero cuando escribo otra dirección como: 600 Band Stand, Mumbai, IN Then

1) el texto no está en color azul

2) Su no parece ser clickable

3) y puesto que no es clickable no encuentra la dirección.

Estoy buscando google, pero no estoy recibiendo ninguna razón para este comportamiento. También quiero saber que

¿Hay algún formato para escribir esta dirección de mapa?

También cómo android sabe que la dirección es válida o no apenas escribiendo la dirección en la secuencia como he escrito la misma dirección en el mismo formato acaba de cambiar la secuencia y el resultado es que una dirección es clickable y otra no.

Por favor ayuda.

Debajo está el comentario escogido del matcher

  1. Busque un número de 1 a 5 dígitos para un número de calle (no hay soporte para 'One Microsoft Way')
  2. Ignore si precedido por '#', Suite, Ste, Rm
  3. Busque dos o más palabras (hasta 5? North Frank Lloyd Wright Blvd)
    Nota: "El Círculo en North Hills St." Tiene seis palabras, y un menor 'en' – permitir en, por, de, en, y, …?
  4. Si una palabra comienza con una letra minúscula, no hay coincidencia
    Permitir – # / (para 1/2) '"
  5. Busque uno o dos delimitadores para representar la segunda línea y el nombre de la ciudad
    Busque el nombre completo del estado o el estado de dos letras y / o el código postal (5 o 9 dígitos)
  6. Ahora busque el sufijo de la calle, ya sea en forma completa o abreviada, con 's' opcional si hay un asterisco

Fuente: CacheBuilder.cpp. Para más información puede comprobar el algoritmo exacto en CacheBuilder :: FindPartialAddress de webviewcore

Por lo que veo desde el código sólo nombres de calles que terminan en LleY, NneX, RCade, VEnue, LAMEDA, aYoU y así sucesivamente … se emparejan. En su caso, el soporte de banda no coincide con el final del nombre de la calle que es común en EE.UU.

  • Android TextView tiene líneas delgadas y finas no deseadas arriba y abajo
  • TextView - OnClick - Android
  • Cómo eliminar las líneas antiguas de un TextView
  • Android.content.ActivityNotFoundException cuando el enlace no contiene http
  • Enfocar el siguiente texto automáticamente
  • Problema de diseño con Android: girado TextView
  • Android: TextView automáticamente truncar y reemplazar los últimos 3 caracteres de String
  • ¿Cómo puedo crear una vista de texto que cambie automáticamente su tamaño de fuente para que se ajuste al espacio?
  • Android TextView no actualiza su texto cuando textIsSelectable está establecido en true
  • ¿Cómo establecer el texto dentro de TextView para que esté en dos líneas?
  • Android TextView: establecer dinámicamente el color de fondo no funciona
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.