在iPhone主屏幕上检测一个应用程序

13

您知道如何将Web应用程序添加到iPhone的主屏幕中...现在我该如何检测用户的iPhone是否已添加我的应用程序到主屏幕。

如果已经添加,我该如何启动存储在用户主屏幕上的应用程序,而不是在Safari中。

注意:这是一个简单地书签形式保存在iPhone主屏幕上的Web应用程序,它不是本地应用程序。

有任何想法吗?


我不明白。Web应用程序只能在Safari中运行。 - dasdom
是的,你说得对,但我想让它在全屏运行,而不显示Safari浏览器默认的标题栏和底部图标。这是否可能? - smoizs
1个回答

30
根据Safari Web Content Guide,您需要在网页中设置<meta name="apple-mobile-web-app-capable" content="yes" />以全屏模式呈现您的内容。
您还可以设置启动图像,通过设置<link rel="apple-touch-startup-image" href="/startup.png">使其看起来像原生应用程序。 编辑(检测是否在全屏模式下运行) 您可以向网页中添加一些JS代码来检测它是否在全屏模式下运行:
<script type="text/javascript">
if ('standalone' in navigator && !navigator.standalone && (/iphone|ipod|ipad/gi).test(navigator.platform) && (/Safari/i).test(navigator.appVersion)) {
    __do something here__
}

如果需要更多关于此项目的信息,这个项目可能会引起您的兴趣。


1
好的,如果应用程序被添加到主屏幕,则这很有效..但在Safari中不起作用。实际上问题是 - 是否有一种方法可以检测应用程序是否已添加到主屏幕以及如果有人访问URL是否可以打开它。 - smoizs
2
嗨!是的,这有助于检测网页是否已添加到主屏幕!非常感谢。我想我可以解决这个问题。 - smoizs

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接