我正在尝试使用我的Asp.net项目制作“添加到主屏幕”横幅
我的Index.js是



// Make sure we are accessing over https, if not redirect
if ((!location.port || location.port === "80") && location.protocol !== "https:" && location.host !== "localhost") {
    location.protocol = "https:";
}

if (navigator.serviceWorker) {
    navigator.serviceWorker.register('sw.js').then(function (registration) {
        console.log('ServiceWorker registration successful with scope:', registration.scope);
    }).catch(function (error) {
        console.log('ServiceWorker registration failed:', error);
    });
}





而我的Sw.js是



console.log('I am a Service Worker!');
self.addEventListener('install', function () {
    self.skipWaiting();
});

self.addEventListener('activate', function (event) {
    event.waitUntil(clients.claim());
});





我的清单文件就像



{
  "name": "App_Name",
  "short_name": "APP",
  "icons": [
		{
        "src": "120x120.png",
        "type": "image/png",
        "sizes": "128x128"
      },
	  {
        "src": "152x152.png",
        "type": "image/png",
        "sizes": "152x152"
      },
	  {
        "src": "144x144.png",
        "type": "image/png",
        "sizes": "144x144"
      },
	  {
        "src": "192x192.png",
        "type": "image/png",
        "sizes": "192x192"
      },
      {
        "src": "192x192.png",
        "type": "image/png",
        "sizes": "256x256"
      },
      {
        "src": "192x192.png",
        "type": "image/png",
        "sizes": "512x512"
      }
	  ],
  "start_url": "Welcome.aspx?launcher=true",
  "scope": "/",
  "display": "standalone",
  "orientation": "portrait",
  "background_color": "#aac73c ",
  "theme_color": "#63528a"
}





当在“应用程序”选项卡中单击Devtool表单中的“添加到主屏幕”时,此方法有效。但是它不能像这样显示添加到主屏幕的弹出窗口。
javascript - 我的ASP.Net网站上没有显示“添加到主屏幕”弹出窗口-LMLPHP

请指教...预先感谢

最佳答案

浏览器管理何时显示“应用程序安装”横幅(又名“添加到主屏幕”提示)。我猜他们基于用户与应用程序进行了多少互动(这些启发式/标准因浏览器而异,并且可能会不时发生变化)。

出于开发目的,只要单击DevTools的“添加到主屏幕”时它可以工作,您就可以确信它也可以在其他设备上工作。

还有一种绕过这些浏览器启发式方法的方法,只是立即显示App Install标语。它被隐藏在Chrome中的标志后面,因此请转到chrome://flags并查找“绕过用户参与度检查”,然后启用该标志。

08-19 05:15