¿Cómo evitar que Safari secuestre los enlaces de la aplicación de Amazon?

iPhone SE de Apple con iOS 13.5.1:

Cuando abro un hipervínculo de Amazon desde un correo electrónico o un mensaje, se iniciará la aplicación de Amazon y, antes de que pueda abrirse por completo, Safari secuestrará el enlace y abrirá 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 otros enlaces de aplicaciones como Yelp y Quora. Los enlaces de Quora se inician y abren la aplicación Quora sin secuestro de Safari.

He intentado borrar todos los datos web y de caché en Safari. He eliminado y reinstalado la aplicación de Amazon. Todavía hace lo mismo.

Las búsquedas de Google se han vuelto infructuosas, ya que parece que la mayoría de las personas prefieren ver Amazon en el navegador en lugar de la aplicación, lo que me coloca en la minoría y dificulta encontrar información sobre mi problema (Opinión: ¿Soy solo yo o tiene el Google? función de búsqueda degradada en los últimos años?).

No he podido aislar si se trata de un problema de iPhone/iOS o de una aplicación de Amazon.

Editar: (Información solicitada)

Tengo instalada la última aplicación de Amazon 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 hizo ninguna diferencia.

Por alguna razón, pensé que estar en wifi vs LTE 4G marcaría la diferencia. no lo hizo

Probé algunos enlaces de "amazon.com/apple-app-site-association".

Estos enlaces iniciaron la aplicación y no fueron enviados a Safari:

https://www.amazon.com/ofertas

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

Este es un enlace que se encuentra en "apple-app-site-association" y fue enviado 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 "apple-app-site-association" encontré esto:

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

Entonces, de acuerdo con la "asociación del sitio de la aplicación de Apple", este enlace no debe enviarse a Safari, pero lo hace:

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

Este enlace:

http://amzn.com/1635616271

se abre en Safari y luego se envía a la aplicación de Amazon y luego Amazon lo devuelve a Safari y Safari lo abre para:

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 están gestionando correctamente. ¿Alguien más puede confirmar el comportamiento?

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

Respuestas (1)

No es Safari secuestrando el enlace, sino que la aplicación de Amazon lee el enlace que se le pasó y declara que no puede manejar el enlace, devolviéndolo a Safari para que lo maneje de forma genérica.

  1. El sitio web de Amazon declara los enlaces que deben abrirse en la aplicación si la aplicación está instalada en su iPhone. Puede descargar esta lista usted mismo en amazon.com/apple-app-site-association .
  2. Abrir un enlace en iOS que coincida con uno de estos enlaces pasará el enlace a la aplicación de Amazon.
  3. La aplicación 'abre' el enlace (cambiando a Amazon al 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 application(_:continue:restorationHandler:)usa
  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'hacer saber a iOS que [la] aplicación no manejó la actividad'. Esto ocurre dentro del código de la aplicación de Amazon.
  5. Dado que la aplicación de Amazon se negó a abrir el enlace, Safari se abre como copia de seguridad y navega hasta el enlace.
Gracias por tu percepción. Se agregó información y pruebas adicionales a la consulta inicial, ya que el comportamiento no se ajusta a las asociaciones declaradas.
@usuario Creo que tienes algo al revés: apple-app-site-association dice qué enlaces debe abrir la aplicación de Amazon desde Safari. La propia aplicación de Amazon decide qué subconjunto de esos enlaces no puede manejar, y Amazon ha programado la aplicación para abrir Safari cuando la aplicación no puede manejar un enlace que declaró previamente como abierto. Idealmente, la aplicación de Amazon solo debería aceptar enlaces que realmente pueda manejar: Amazon ha programado este respaldo en su aplicación.