繁体   English   中英

如何通过Safari Mobile中的javascript检测我的iPhone应用程序是否已安装?

[英]How do I detect, via javascript in Safari Mobile, if my iPhone application is installed?

您可能知道,iPhone应用程序可以注册自定义URL方案处理程序,ala“myapp:”,这些可以用于在Safari中查看的页面中的链接。

如果访问者安装了应用程序,我想从特定页面自动启动我的应用程序。 如果未安装应用程序,我只会向他们展示当前针对移动设备优化的页面视图。

我该怎么做这个检测? 谷歌的搜索毫无结果。 此外,为了变得棘手,我尝试做这样的事情无济于事:

var image = new Image();
image.onerror = function(e){
  alert("bummer");
}
image.onload = function(e){
  alert('success!');
}
image.src = 'myapp://something=meaningful';

有没有人遇到过应用程序检测的方法?

我在另一个Stack Overflow问题上提出的解决方案与您将获得的解决方案尽可能接近。

我不认为这是可能的。 您需要在iPhone / Mobile Safari上注册您的应用程序,然后创建一个uri来启动您的应用程序,就像http:,ftp:mailto:。 所以在你的情况下,你会有类似的东西,我安装Mobile Safari需要知道要启动哪个应用程序加载该URI,我只是不认为这个功能是内置在iPhone中。 我知道javascript无法查询你的iPhone以查看安装的内容。

我希望我错了,因为这似乎是一个强大的功能,但另一方面,我可以看到一些与此类相关的安全问题。

祝好运。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM