是什么导致 iOS webapp 在启动屏幕上冻结?
What causes an iOS webapp to freeze on the startup screen?
我开发了一个 HTML5 webapp,到目前为止我的本地服务器测试运行良好(运行 在桌面浏览器中,iOS Safari 浏览器和主屏幕书签 webapp)。这也适用于离线使用(使用 cache.manifest 文件)。
当我将文件上传到我的网站时,我进行了测试以确认它仍然可以在桌面上运行(Chrome 显示应用程序缓存日志),也可以在 iOS Safari 中运行。在线和离线。
问题
当我将我网站上的页面添加为主屏幕图标并尝试从那里启动它时,网络应用程序在启动图像上冻结。
是什么导致了这个特定问题?
清单:
- HTML 标签包含:
<html manifest="cache.manifest">
- HTML 确实包含:
<meta name="apple-mobile-web-app-capable" content="yes">
- HTML 确实包含:
<meta name="apple-mobile-web-app-status-bar-style" content="black">
- 不确定这是否重要但是:
<meta name="viewport" content="width=1024, minimal-ui, user-scalable=no">
apple-touch-startup-image
和 apple-touch-icon
link 标签通过 Javascript. 动态附加到 <head>
标签
- 仅包含
cache.manifest
中必要的文件名。
- 虚拟主机支持
manifest
mimeType(无需更改 .htaccess
)。
- 该网站确实使用了
.htaccess
密码身份验证设置。
注意:我将调查我使用 apple-touch-startup-image
& apple-touch-icon
动态附加 jQuery 是否可能是这里的问题。
当我在上面的清单中列出 .htaccess
密码验证 位时,我突然明白了。
iOS 的 chromeless 浏览器似乎无法在启动时启动用户名和密码提示。
果然,允许完全访问页面解决了主屏幕应用程序的问题。为此,我将其包含在一个单独的 .htaccess
文件中,该文件位于 webapp 所在的同一目录中:
Satisfy Any
就是这样!
虽然我不是很喜欢这个解决方案,但我不想每次启动 webapp 时都输入用户名和密码。
我开发了一个 HTML5 webapp,到目前为止我的本地服务器测试运行良好(运行 在桌面浏览器中,iOS Safari 浏览器和主屏幕书签 webapp)。这也适用于离线使用(使用 cache.manifest 文件)。
当我将文件上传到我的网站时,我进行了测试以确认它仍然可以在桌面上运行(Chrome 显示应用程序缓存日志),也可以在 iOS Safari 中运行。在线和离线。
问题
当我将我网站上的页面添加为主屏幕图标并尝试从那里启动它时,网络应用程序在启动图像上冻结。
是什么导致了这个特定问题?
清单:
- HTML 标签包含:
<html manifest="cache.manifest">
- HTML 确实包含:
<meta name="apple-mobile-web-app-capable" content="yes">
- HTML 确实包含:
<meta name="apple-mobile-web-app-status-bar-style" content="black">
- 不确定这是否重要但是:
<meta name="viewport" content="width=1024, minimal-ui, user-scalable=no">
apple-touch-startup-image
和apple-touch-icon
link 标签通过 Javascript. 动态附加到 - 仅包含
cache.manifest
中必要的文件名。 - 虚拟主机支持
manifest
mimeType(无需更改.htaccess
)。 - 该网站确实使用了
.htaccess
密码身份验证设置。
<head>
标签
注意:我将调查我使用 apple-touch-startup-image
& apple-touch-icon
动态附加 jQuery 是否可能是这里的问题。
当我在上面的清单中列出 .htaccess
密码验证 位时,我突然明白了。
iOS 的 chromeless 浏览器似乎无法在启动时启动用户名和密码提示。
果然,允许完全访问页面解决了主屏幕应用程序的问题。为此,我将其包含在一个单独的 .htaccess
文件中,该文件位于 webapp 所在的同一目录中:
Satisfy Any
就是这样!
虽然我不是很喜欢这个解决方案,但我不想每次启动 webapp 时都输入用户名和密码。