|
|
|
|
|
- Presentación
- Implementación
- Generación de la aplicación Android y configuración en el servidor web
- Generación de la aplicación iOS y configuración en el servidor web
Enlaces profundos a aplicaciones móviles
Los enlaces profundos (Deep links) redirigen al usuario a un contenido específico en una aplicación móvil (en lugar de en un navegador) cuando pulsa sobre un enlace en una página web o en un correo electrónico. Ejemplo: un enlace que lleva a los usuarios a un producto específico en una aplicación de comercio electrónico. Si el usuario tiene la aplicación instalada en su teléfono, el enlace abre directamente la aplicación y muestra el producto deseado. Si el usuario no tiene la aplicación instalada en su teléfono, el enlace puede, por ejemplo: - llevar a los usuarios a una página web con el contenido deseado,
- llevar a los usuarios a la página de la aplicación en la tienda de aplicaciones correspondiente.
Así se evita mostrar un mensaje de error al usuario final. Este tipo de enlace se conoce como "App Link" en Android y "Universal Link" en iOS. Para abrir una aplicación Android o iOS a través de un enlace profundo: - Utilice la función DeepLinkProcedure en el código de inicialización del proyecto Mobile. Esta función define el procedimiento WLanguage que se ejecuta cuando el usuario hace clic en un enlace profundo.
- Defina las URL que se asociarán a la aplicación en el asistente de generación de la aplicación Android o iOS. Cada URL debe especificar un protocolo (HTTP o HTTPS en Android y HTTPS en iOS), un nombre de dominio y, opcionalmente, toda o parte de la ruta de la URL.
- Publique el archivo de asociación en el servidor web.
Observación: Para saber si una aplicación se ha abierto a través de un enlace profundo, utilice la función ExeInfo con la constante exeLaunch. Generación de la aplicación Android y configuración en el servidor web Puede asociar una o varias URL a la aplicación. Cada URL debe especificar: - un protocolo (HTTP o HTTPS),
- un nombre de dominio,
- opcionalmente, toda o parte (prefijo, patrón) de la ruta URL.
El asistente de generación de la aplicación Android incluye la etapa "Enlaces profundos", en la que puede introducir los nombres de dominio asociados a los enlaces profundos. Por cada nombre de dominio utilizado, debe crear un archivo assetlinks.json que contenga el documento JSON que aparece en el asistente de generación. Este archivo debe publicarse en la siguiente ubicación: https://<Domain name>/.well-known/assetlinks.json Atención: Se debe poder acceder al archivo "assetlinks.json" desde el exterior y sin redireccionamientos mediante una conexión HTTPS. Este archivo contiene, entre otros datos, el nombre del paquete de la aplicación, así como la huella digital SHA256 del certificado de firma. Por razones de seguridad, el archivo también permitirá al sistema verificar que el propietario de la aplicación y el nombre de dominio que corresponden al enlace son los mismos. Si la verificación falla, el sistema utiliza el comportamiento predeterminado, que consiste en mostrar el destino del enlace en un navegador. Después de instalar la aplicación, el proceso de verificación puede tardar en completarse. Atención: Algunos navegadores móviles no permiten abrir aplicaciones directamente desde los enlaces de las páginas. La configuración de algunos navegadores también puede impedirlo. Generación de la aplicación iOS y configuración en el servidor web Puede utilizar varias URL de enlaces profundos. El asistente de generación de la aplicación iOS incluye la etapa "Enlace profundo (Apple Universal Links)", en la que se pueden introducir los nombres de dominio asociados a los enlaces profundos. Por cada nombre de dominio, se debe crear un archivo específico: https://<Domain name>/.well-known/apple-app-site-association Este archivo debe ser accesible para los servidores de Apple a través de HTTPS, y tener un certificado válido. Observación: La opción "Modo desarrollador" en el asistente de generación permite a la aplicación obtener el archivo apple-app-site-association directamente sin pasar por una CDN gestionada por Apple. Esta opción solo puede utilizarse en modo simulador en un Mac, utilizando un perfil de aprovisionamiento de desarrollo. El contenido del archivo apple-app-site-association tendrá la siguiente estructura: { "applinks": { "details": [ { "appIDs": [ "ABCDE12345.com.example.app", "ABCDE12345.com.example.app2" ], "components": [ { "/": "/buy/*", "comment": "Matches any URL with a path that starts with /buy/." }, { "/": "/help/website/*", "exclude": true, "comment": "Matches any URL with a path that starts with /help/website/ and instructs the system not to open it as a universal link." }, { "/": "/help/*", "?": { "articleNumber": "????" }, "comment": "Matches any URL with a path that starts with /help/ and that has a query item with name 'articleNumber' and a value of exactly four characters." } ] } ] } } Para que sea compatible con iOS 12, se debe utilizar el siguiente formato: { "applinks": { "apps": [], "details": { "ABCDE12345.com.example.app": { "paths": [ "/buy/*", "/help/*" ] } } } }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|