ios8无法在safari中使用开放网址方案

时间:2014-10-28 11:37:25

标签: javascript ios8 mobile-safari

嗨此代码适用于ios7 safari。但ios8无法正常工作。

setTimeout(function(){ if (+new Date - ca < 1000) {//open appstore }}, 500) ;

location.href = "myapp://"

我尝试了iframe,document.location.href,window.location,window.open ......

请给我一个解决方案!

如何更改此来源?

1 个答案:

答案 0 :(得分:1)

我也经历过你所看到的同样问题。如果在iframe中打开应用商店网址方案,似乎safari ios8不会加载应用商店。奇怪的是,无论是否在iframe中调用,它都会打开您的应用(如果您的应用已安装)。

我通过将应用商店网址定位到父窗口来解决了这个问题。

这是我在iframe中的javascript:

var appStoreUrl = 'itms-apps://itunes.apple.com/gb/app/...';
var loadedAt = +new Date;
setTimeout(function() {
  if (+new Date - loadedAt < 2000) {
    window.parent.location.href = appStoreUrl;
  }
}, 100);

window.location.href = 'myapp://...';