1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- <!DOCTYPE html>
- <html>
- <head>
-
- <base href="/">
- <meta charset="UTF-8">
- <meta content="IE=Edge" http-equiv="X-UA-Compatible">
- <meta name="description" content="A new Flutter project.">
-
- <meta name="apple-mobile-web-app-capable" content="yes">
- <meta name="apple-mobile-web-app-status-bar-style" content="black">
- <meta name="apple-mobile-web-app-title" content="gobang">
- <link rel="apple-touch-icon" href="icons/Icon-192.png">
- <title>gobang</title>
- <link rel="manifest" href="manifest.json">
- </head>
- <body>
-
- <script>
- var serviceWorkerVersion = null;
- var scriptLoaded = false;
- function loadMainDartJs() {
- if (scriptLoaded) {
- return;
- }
- scriptLoaded = true;
- var scriptTag = document.createElement('script');
- scriptTag.src = 'main.dart.js';
- scriptTag.type = 'application/javascript';
- document.body.append(scriptTag);
- }
- if ('serviceWorker' in navigator) {
-
- window.addEventListener('load', function () {
-
-
-
- var serviceWorkerUrl = 'flutter_service_worker.js?v=' + serviceWorkerVersion;
- navigator.serviceWorker.register(serviceWorkerUrl)
- .then((reg) => {
- function waitForActivation(serviceWorker) {
- serviceWorker.addEventListener('statechange', () => {
- if (serviceWorker.state == 'activated') {
- console.log('Installed new service worker.');
- loadMainDartJs();
- }
- });
- }
- if (!reg.active && (reg.installing || reg.waiting)) {
-
-
- waitForActivation(reg.installing ?? reg.waiting);
- } else if (!reg.active.scriptURL.endsWith(serviceWorkerVersion)) {
-
-
- console.log('New service worker available.');
- reg.update();
- waitForActivation(reg.installing);
- } else {
-
- console.log('Loading app from service worker.');
- loadMainDartJs();
- }
- });
-
-
- setTimeout(() => {
- if (!scriptLoaded) {
- console.warn(
- 'Failed to load app from service worker. Falling back to plain <script> tag.',
- );
- loadMainDartJs();
- }
- }, 4000);
- });
- } else {
-
- loadMainDartJs();
- }
- </script>
- </body>
- </html>
|