ios iPhone Safari上“添加到主屏幕”的URL可以自定义吗?

zte4gxcn  于 2023-01-06  发布在  iOS
关注(0)|答案(5)|浏览(434)

"添加到主屏幕"显示在一个网站的所有页面上,我希望网址是得到保存的主页。
例如,在此页面上:http://www.domain.com/category/page.html
"添加到主屏幕"是否可以保存此URL:http://www.domain.com
任何帮助都将不胜感激。

m3eecexj

m3eecexj1#

我找到了一个解决这个问题的方法,你可以检测到你是通过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

移动的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

如果你的页面大部分内容都是通过 AJAX 获得的,或者你注意到服务器上有不同的用户代理,你可以跳过重定向,就像你在另一个URL上一样,因为在独立模式下,这个URL是不可见的。我正在调查这个问题,但还没有足够的证据来判断它是否会让你崩溃。
还要注意,用户选择URL来标记为应用程序可能是有意义的,但我将把它留给您自己的UX判断。

py49o6xq

py49o6xq2#

WrightsCS和svachalek Answers的组合-您不能向主屏幕添加远程页面。但是,您可以在页面添加到主屏幕后从该页面重定向。
您需要做的就是使用这个简单的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.

}

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

<meta name="apple-mobile-web-app-capable" content="yes">
jq6vz3qz

jq6vz3qz3#

不,如果没有越狱 (据我所知,没有什么能做到这一点),就没有办法编辑实际的URL。
苹果限制这一点至少有一个原因,我能想到的安全。编辑网址将允许人们使用javascript,这将不可避免地导致恶意软件。

c0vxltue

c0vxltue4#

我得到了这个工作,我的目的是填充iPhone上的“共享”书签的URL:

history.pushState('','','/');

这样做是有效的,因为我只需要剪切主域的URL(我使用document.title =“newName”设置书签图标的屏幕名称)。

pgx2nnw8

pgx2nnw85#

当这个问题被问到的时候,它还不存在,但是清单中的start_url字段允许这样做:
https://developer.mozilla.org/en-US/docs/Web/Manifest/start_url
不幸的是,这不允许动态控制,因为清单通常会在开始时获取。例如,它不允许记住用户的搜索,但删除页码,所以保存的搜索不会在以后打开时从下三页开始。

相关问题