通过配置web app manifest和启用pwa特性,可让ios用户点击“添加到主屏幕”后以独立全屏应用形式运行网站,脱离safari浏览器容器。关键在于正确设置manifest.json、添加meta标签并确保https部署。
通过配置web app manifest和启用pwa特性,可让ios用户点击“添加到主屏幕”后以独立全屏应用形式运行网站,脱离safari浏览器容器。关键在于正确设置manifest.json、添加meta标签并确保https部署。
要让您的网站在iOS上真正“变成一个App”(即点击“添加到主屏幕”后以无地址栏、无工具栏的全屏模式启动,且独立于Safari进程),您需要构建一个符合标准的渐进式Web应用(Progressive Web App, PWA)。iOS自iOS 11.3起已原生支持PWA安装能力,但体验优化需满足多项技术条件——仅靠manifest.json远远不够,必须配合HTML声明、HTTPS环境及合理配置。
HTTPS 协议(强制要求)
iOS Safari仅允许在安全上下文(HTTPS或localhost)中触发“添加到主屏幕”并启用全屏模式。生产环境务必部署SSL证书,HTTP站点将始终在Safari中打开。
Web App Manifest 文件(manifest.json)
将以下文件置于网站根目录(如 https://yoursite.com/manifest.json),并确保响应头包含 Content-Type: application/manifest+json:
{ "name": "我的应用名称", "short_name": "我的App", "description": "一款轻量级Web应用", "theme_color": "#4285f4", "background_color": "#ffffff", "display": "standalone", // 推荐值:iOS优先使用"standalone","fullscreen"在iOS中实际表现等同于"standalone" "scope": "/", "start_url": "/index.html?utm_source=homescreen", "icons": [ { "src": "/icons/icon-192x192.png", "sizes": "192x192", "type": "image/png" }, { "src": "/icons/icon-512x512.png", "sizes": "512x512", "type": "image/png" } ]}
⚠️ 注意:iOS不支持"display": "fullscreen"的沉浸式全屏(该值在iOS中会被降级为"standalone")。请统一使用 "display": "standalone" 以获得最佳兼容性;同时务必提供至少192×192和512×512两套图标(PNG格式),否则添加失败或图标模糊。
<!-- 指向 manifest 文件 --><link rel="manifest" href="/manifest.json"><!-- iOS Safari 专属:启用独立应用模式 --><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="default"><meta name="apple-mobile-web-app-title" content="我的App"><!-- 可选:自定义启动图(iOS 16.4+ 支持更灵活配置,但传统方式仍有效) --><link rel="apple-touch-startup-image" href="/splash/apple-splash-2048x2732.png" media="(device-width: 1024px) and (device-height: 1366px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)">
完成以上配置后,您的网站即可在iOS上实现真正的“添加到主屏幕即App”体验:启动快、界面干净、状态独立,为用户提供接近原生应用的交互质感。