可以自定义iPhone Safari上"添加到主屏幕"的网址吗?

Hop*_*eam 19 iphone safari mobile mobile-safari ios

"添加到主屏幕"显示在网站的所有页面上,我希望该URL成为保存的主页.

例如,在此页面上:http: //www.domain.com/category/page.html

是否可以通过"添加到主屏幕"保存此URL:http: //www.domain.com

任何帮助将不胜感激.

sva*_*lek 11

我发现了一种解决方法.您可以检测到您是通过window.navigator.standalone从主页启动并基于该潜在重定向.

此外,我做了一些测试,发现在最新的iOS上,不同的用户代理报告给服务器,这样就可以更快地重定向.我找不到有关这种情况是否一直如此的任何信息.

从主页启动:

Mozilla/5.0 (iPhone; CPU iPhone OS 6_0_1 like Mac OS X) 
AppleWebKit/536.26 (KHTML, like Gecko) Mobile/10A523
Run Code Online (Sandbox Code Playgroud)

移动Safari:

Mozilla/5.0 (iPhone; CPU iPhone OS 6_0_1 like Mac OS X) 
AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A523 Safari/8536.25
Run Code Online (Sandbox Code Playgroud)

如果您的页面通过AJAX获取其大部分内容,或者您​​注意到服务器上的不同用户代理,则可能会跳过重定向并只是"好像"您在另一个URL上,因为在独立模式下,URL是不可见的无论如何.我正在调查这个,但还没有足够的说明是否会烧伤你.

另请注意,用户选择标记为应用程序的URL可能有意义,但我会将其留给您自己的UX判断.


Roy*_*ysh 5

WrightsCS 和 svachalek 答案的组合 - 您无法“添加到主屏幕”远程页面。但是,您可以在将页面添加到主屏幕后进行重定向。

您需要做的就是使用这个简单的 JavaScript:

if ('standalone' in window.navigator && window.navigator.standalone){ //checks if you're in app mode

  window.location = 'http://www.example.com';  //the URL you want to refer to

}
Run Code Online (Sandbox Code Playgroud)

确保将此 html 代码添加到您的页面中:

<meta name="apple-mobile-web-app-capable" content="yes">
Run Code Online (Sandbox Code Playgroud)