📅  最后修改于: 2023-12-03 14:56:09.132000             🧑  作者: Mango
渐进式 Web 应用程序 (Progressive Web Apps, PWA) 是一种结合了传统网站和原生应用程序的技术。启动一个 PWA 的方式和传统网站有些不同,需要将启动 url 添加到主屏幕或设备应用程序列表中,然后通过点击该图标启动 PWA。
在你的应用程序根目录中创建一个 manifest.json
文件,该文件用于描述 PWA 的各种属性,包括应用名称、图标、启动 url 等。具体的配置可以参考 官方文档。
{
"name": "My PWA",
"short_name": "My App",
"start_url": "/",
"display": "standalone",
"background_color": "#ffffff",
"theme_color": "#262626",
"icons": [
{
"src": "/icons/icon-72x72.png",
"type": "image/png",
"sizes": "72x72"
},
{
"src": "/icons/icon-96x96.png",
"type": "image/png",
"sizes": "96x96"
},
{
"src": "/icons/icon-128x128.png",
"type": "image/png",
"sizes": "128x128"
},
{
"src": "/icons/icon-144x144.png",
"type": "image/png",
"sizes": "144x144"
},
{
"src": "/icons/icon-152x152.png",
"type": "image/png",
"sizes": "152x152"
},
{
"src": "/icons/icon-192x192.png",
"type": "image/png",
"sizes": "192x192"
},
{
"src": "/icons/icon-384x384.png",
"type": "image/png",
"sizes": "384x384"
},
{
"src": "/icons/icon-512x512.png",
"type": "image/png",
"sizes": "512x512"
}
]
}
Service Worker 是 PWA 中的一个核心概念,它是一个在后台运行的 JavaScript 文件,负责管理缓存、推送通知等功能。在你的应用程序中添加一个 service-worker.js
文件,并在文件中注册 Service Worker。
if ('serviceWorker' in navigator) {
window.addEventListener('load', function() {
navigator.serviceWorker.register('/service-worker.js').then(function(registration) {
console.log('ServiceWorker registration successful with scope: ', registration.scope);
}, function(err) {
console.log('ServiceWorker registration failed: ', err);
});
});
}
在你的应用程序中,选择一个最适合作为启动 url 的页面,并将其添加到你的 manifest.json 文件中的 start_url
属性中。
{
"name": "My PWA",
"short_name": "My App",
"start_url": "/index.html",
...
}
当用户访问您的 PWA 时,他们可以通过这些步骤将它添加到设备主屏幕:
用户还可以通过以下步骤将您的 PWA 添加到他们设备上的应用程序列表中:
要让用户启动你的 PWA,你需要将启动 url 添加到设备主屏幕或应用程序列表中。通过添加 manifest.json
文件和 Service Worker 文件来设置 PWA 的属性和功能,然后选择最适合用作启动 url 的页面。