3 votos

Establecimiento de los valores por defecto de los enlaces

Hace tiempo que no entiendo cómo funciona esto: cuando hago clic en un enlace, por ejemplo en un navegador (Chrome, por ejemplo) y aparece el cuadro de diálogo "Abrir con", si es así, si decido guardar un enlace predeterminado de Google maps, ¿se establecerá el valor predeterminado en TODOS los enlaces de Google maps, en ese enlace en particular, o me estoy perdiendo algo?

A menudo tengo miedo de establecer valores por defecto porque no tengo claro qué es lo que estoy estableciendo por defecto para ¿Es el nombre de dominio?

Agradecería cualquier consejo, enlace a documentación, o sugerencia de aplicaciones para que esto me quede más claro. Gracias.

4voto

Andy Brudtkuhl Puntos 1714

Respuesta corta: sí, es para todos los enlaces de Google Maps.

La respuesta larga es que el Android intención (que es la forma en que Android decide qué aplicación iniciar) puede usar diferentes partes de la URL para que coincida con la aplicación. La aplicación puede registrarse con Android para manejarse:

  • un esquema particular de URI, como market://
  • un dominio particular, como youtube.com
  • caminos dentro del dominio que coinciden con un filtro particular, como /users/*

Las aplicaciones también pueden filtrar otras cosas que no son relevantes para hacer clic en un enlace, como diferentes acciones (por ejemplo, compartir) o diferentes tipos de MIME. Una aplicación puede tener más de un filtro, y un filtro puede coincidir con cualquier combinación de las cosas anteriores. Por ejemplo, una aplicación de YouTube puede tener un filtro que coincida cuando se cumplan todas estas condiciones:

  • el esquema es http:// o https://
  • el dominio es youtube.com
  • el camino coincide watch?v=*

y otra que coincide cuando se cumplen todas estas condiciones:

  • el esquema es http:// o https://
  • el dominio es youtu.be (el dominio de los URL cortos)

En este caso, hay dos valores predeterminados diferentes a establecer: la primera vez que se hace clic en un enlace http://www.youtube.com/watch?v=DJRFaR71HfY establecerá el valor por defecto para ese tipo de enlace. Entonces, si más tarde haces clic en un http://youtu.be/DJRFaR71HfY preguntará por segunda vez, porque eso cuenta como un tipo diferente de vínculo.

En el caso de Google Maps, hay varios tipos diferentes de enlaces que puede manejar (así como otros filtros de intención no relevantes para los enlaces):-

  • geo://*
  • latitude://*
  • http://maps.google.tld/ o https://maps.google.tld/ (sin nada después de la / ), para cada TLD que Google tiene (google.com, google.fr, etc.)
  • http://maps.google.tld/maps* o https://maps.google.tld/maps*
  • http://mapy.google.pl/ o https://mapy.google.pl/ ("mapy" es la palabra polaca para "mapas")
  • http://mapy.google.pl/maps* o https://mapy.googl.pl/maps*
  • http://local.google.com/ o https://local.google.com/
  • http://local.google.com/maps* o https://local.google.com/maps*
  • http://m.google.com/latitude o https://m.google.com/latitude
  • http://www.google.com/latitude o https://www.google.com/latitude
  • http://m.google.com/u/m/* o https://m.google.com/u/m/*

Cada una de esas líneas cuenta como un tipo diferente de enlace, por lo que Android preguntará de nuevo. Además, todas menos la primera de ellas tienen dos entradas separadas: una para abrir o navegar un enlace de la forma habitual, y otra para escanear una etiqueta NFC (o recibir por Android Beam) un enlace coincidente. De nuevo, esas dos cosas cuentan como enlaces diferentes a efectos de establecer los valores por defecto.


Para obtener esta información de la aplicación de Google Maps, usé la aplicación PackageExplorer . La información que te da requiere cierto conocimiento para interpretarla: puedes encontrar la Guía de la API de Android para desarrolladores útil.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X