ventanas sirve que publicidad permitir para mackeeper mac las emergentes eliminar descargar desbloquear como bloquear javascript ios safari mobile-safari mobile-website

publicidad - para que sirve javascript en iphone



cómo evitar la alerta de safari de iOS al intentar abrir la aplicación nativa no instalada? (5)

Aquí hay una solución que funciona para mí:

var timeout; function preventPopup() { clearTimeout(timeout); timeout = null; window.removeEventListener(''pagehide'', preventPopup); } function openApp() { $(''<iframe />'') .attr(''src'', appurl) .attr(''style'', ''display:none;'') .appendTo(''body''); timeout = setTimeout(function() { document.location = appstore; }, 500); window.addEventListener(''pagehide'', preventPopup); }

He estado buscando una forma de abrir una aplicación nativa de iOS desde el navegador. Encontré una solución decente aquí: ¿es posible registrar un esquema de URL basado en dominio http + para aplicaciones de iPhone, como YouTube y Maps?

Esta solución funciona muy bien cuando tienes la aplicación instalada. pero cuando un usuario no tiene esta aplicación instalada, Safari desencadena un mensaje de error que dice "Safari no puede abrir la página porque la dirección no es válida".

¿Hay alguna manera de evitar este comportamiento y, en su lugar, solicitar al usuario que descargue la aplicación?


Estoy utilizando la actualización de meta como alternativa porque funciona sin javascript. Este código funciona en iOS y Android.

<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta http-equiv="refresh" content="1; url=http://www.facebook.com"> <title>Redirecting..</title> <script> function tryOpenApp() { var iframe = document.createElement("iframe"); iframe.style.border = "none"; iframe.style.width = "1px"; iframe.style.height = "1px"; iframe.src = "fb://feed/"; document.body.appendChild(iframe); } </script> </head> <body onload="tryOpenApp()"> </body> </html>

Prueba http://static-pmoretti.herokuapp.com/deep-link/



Para resolver esto y evitar la alerta de safari de iOS no deseado, he utilizado un método de manejo diferente también un iframe pero sin eventos de jquery y oyente. Funciona perfectamente

var iframe = document.createElement("iframe"); iframe.style.border = "none"; iframe.style.width = "1px"; iframe.style.height = "1px"; iframe.onload = function () { document.location = alt; }; iframe.src = nativeSchemaUrl; //iOS app schema url window.onload = function(){ document.body.appendChild(iframe); } setTimeout(function(){ window.location = fallbackUrl; //fallback url },300);


usa iframe

$(''<iframe />'').attr(''src'', "appname://").attr(''style'', ''display:none;'').appendTo(''body'');