My question is about iOS9 only!
I have an HTML
landing page, and I try to redirect the user to my app via URL scheme if the app is installed, or redirect to the Appstore otherwise.
My code is:
document.addEventListener("DOMContentLoaded", function(event) {
var body = document.getElementsByTagName('body')[0];
body.onclick = function () {
openApp();
};
});
var timeout;
function preventPopup() {
clearTimeout(timeout);
timeout = null;
window.removeEventListener('pagehide', preventPopup);
}
function openApp(appInstanceId, platform) {
window.addEventListener('pagehide', preventPopup);
document.addEventListener('pagehide', preventPopup);
// create iframe
var iframe = document.createElement("iframe");
document.body.appendChild(iframe);
iframe.setAttribute("style", "display:none;");
iframe.src = 'myscheme://launch?var=val';
var timeoutTime = 1000;
timeout = setTimeout(function () {
document.location = 'https://itunes.apple.com/app/my-app';
}, timeoutTime);
}
The problem is that the iframe
trick doesn't work in Safari
iOS9
.
Any idea why?
My iframe
trick based on this answer.
JavaScript
+Safari
+iOS
+URLScheme
not only aboutiOS
and not only aboutURLScheme
– Unbearabledisplay:none
? Maybe Safari on iOS9 doesn't open url/iframe not displayed... – ConalUniversal Links
by Apple – Unbearable