5 votos

¿Cómo evitar que Safari secuestre los enlaces de las aplicaciones de Amazon?

Apple iPhone SE con iOS 13.5.1:

Cuando abro un hipervínculo de Amazon desde un correo electrónico o un mensaje, se inicia la aplicación de Amazon y, antes de que pueda abrirse por completo, Safari secuestra el enlace y abre Amazon en Safari.

No quiero que Safari haga esto. Quiero ver los enlaces de Amazon en la aplicación de Amazon. Safari no hace esto con los enlaces de otras aplicaciones como Yelp y Quora. Los enlaces de Quora se lanzan y abren la aplicación de Quora sin que Safari los secuestre.

He probado a borrar toda la caché y los datos de la web en Safari. He borrado y reinstalado la aplicación de Amazon. Sigue haciendo lo mismo.

Las búsquedas en Google se han vuelto infructuosas, ya que parece que la mayoría de la gente prefiere ver Amazon en el navegador frente a la aplicación, lo que me sitúa en minoría y dificulta la búsqueda de información sobre mi problema (Opinión: ¿Soy yo o la función de búsqueda de Google se ha degradado en los últimos años?).

No he podido aislar si esto es un problema del iPhone/iOS o es un problema de la aplicación de Amazon.

Editar: (Información solicitada)

Tengo la última aplicación de Amazon instalada v15.12.6

Aquí está el enlace de ejemplo que es "secuestrado":

https://www.amazon.com/dp/1635616271/

Información adicional:

Reinicié mi teléfono y no hubo diferencia.

Por alguna razón pensé que estar en wifi vs LTE 4G haría una diferencia. Pero no fue así.

He probado algunos enlaces de la asociación "amazon.com/apple-app-site".

Estos enlaces lanzaban la aplicación y no se lanzaban a Safari:

https://www.amazon.com/deals

https://www.amazon.com/gp/aw/h.html

Este es un enlace que se encuentra en la "asociación de sitios de aplicaciones de Apple" y fue pateado a Safari:

https://www.amazon.com/products

Estos enlaces fueron enviados a Safari:

http://amzn.com/1635616271

https://www.amazon.com/dp/1635616271

https://www.amazon.com/dp/1635616271/ref=cm_sw_su_dp

En la "asociación de sitios de apple-app" encontré esto:

"/dp/??????????"

Así que, según la "asociación de sitios de aplicaciones de Apple", este enlace no debería ser lanzado a Safari, pero lo hace:

https://www.amazon.com/dp/1635616271

Este enlace:

http://amzn.com/1635616271

se abre en Safari y luego es pateado a la aplicación de Amazon y luego el Amazon lo patea de nuevo a Safari y Safari lo abre a:

https://www.amazon.com/dp/1635616271/ref=cm_sw_su_dp

¿Todas estas pruebas indican un error en la aplicación de Amazon con su manejo de URL? Las asociaciones declaradas no se manejan correctamente. ¿Puede alguien más confirmar este comportamiento?

1 votos

Bienvenido a Ask Different :) ¿Puedes compartir un enlace de ejemplo que haga eso? También por favor mencione si está ejecutando la última versión actual de la aplicación de Amazon iOS.

7voto

siva Puntos 23

No es que Safari secuestre el enlace, sino que la aplicación de Amazon lee el enlace que se le ha pasado y declara que no puede manejar el enlace, devolviéndoselo a Safari para que lo maneje genéricamente.

  1. El sitio web de Amazon declara los enlaces que deben abrirse en la aplicación si ésta se instala en su iPhone. Puede descargar esta lista usted mismo en amazon.com/apple-app-site-asociación .
  2. Al abrir un enlace en iOS que coincida con uno de estos enlaces, el enlace pasará a la aplicación de Amazon.
  3. La aplicación "abre" el enlace (poniendo a Amazon en primer plano) y la aplicación de Amazon "lee" el contenido del enlace, intentando navegar a una página razonable dentro de la aplicación de Amazon para reflejar la intención del enlace. Esto utiliza application(_:continue:restorationHandler:) .
  4. Si por alguna razón la aplicación de Amazon no pudo completar la intención del enlace, la aplicación de Amazon puede return false para avisar a iOS de que [la] aplicación no ha gestionado la actividad". Esto ocurre dentro del código de la aplicación de Amazon.
  5. Como la aplicación de Amazon se negó a abrir el enlace, Safari se abre como respaldo y navega hasta el enlace.

0 votos

Gracias por su visión. Se ha añadido información adicional y pruebas a la consulta inicial, ya que el comportamiento no se ajusta a las asociaciones declaradas.

0 votos

@usuario Creo que has entendido algo al revés: apple-app-site-association dice qué enlaces debe abrir la app de Amazon desde Safari. La propia app de Amazon decide qué subconjunto de esos enlaces no puede manejar, y Amazon ha programado la app para abrir Safari cuando la app no puede manejar un enlace que previamente declaró como abrible. Lo ideal sería que la aplicación de Amazon sólo aceptara enlaces que realmente puede manejar - Amazon ha programado este fallback en su aplicación.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple 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