Skip to main content

How to create app shortcuts

 


How to create app shortcuts

                                                                                    HTML

<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="color-scheme" content="dark light" /> <link rel="manifest" href="manifest.json" /> <title>How to create app shortcuts</title> <script> if ('serviceWorker' in navigator) { window.addEventListener('load', () => { navigator.serviceWorker.register('sw.js'); }); } </script> <script type="module" src="script.js"></script> </head> <body> <h1>How to create app shortcuts</h1> <ol> <li> You can drag these <a href="blue.html">blue page</a> or <a href="red.html">red page</a> links to the bookmarks bar and access them later. </li> <li> Install the app by clicking the button below. After the installation, the button is disabled. <p> <button disabled type="button">Install</button> </p> </li> </ol> </body> </html>

How to create app shortcuts 

                                        
                                        JASON

{ "name": "How to create app shortcuts", "short_name": "App shortcuts", "start_url": "../demo.html", "icons": [ { "src": "../icons/favicon.png", "type": "image/png", "sizes": "512x512" } ], "shortcuts": [ { "name": "Feel blue", "short_name": "Blue", "description": "Open a blue webpage", "url": "../blue.html", "icons": [{ "src": "../icons/blue.png", "sizes": "192x192" }] }, { "name": "Feel red", "short_name": "Red", "description": "Open a red webpage", "url": "../red.html", "icons": [{ "src": "../icons/red.png", "sizes": "192x192" }] } ], "display": "standalone" }


How to create app shortcuts


                                        JS

// The install button. const installButton = document.querySelector('button'); // Only relevant for browsers that support installation. if ('BeforeInstallPromptEvent' in window) { // Variable to stash the `BeforeInstallPromptEvent`. let installEvent = null; // Function that will be run when the app is installed. const onInstall = () => { // Disable the install button. installButton.disabled = true; // No longer needed. installEvent = null; }; window.addEventListener('beforeinstallprompt', (event) => { // Do not show the install prompt quite yet. event.preventDefault(); // Stash the `BeforeInstallPromptEvent` for later. installEvent = event; // Enable the install button. installButton.disabled = false; }); installButton.addEventListener('click', async () => { // If there is no stashed `BeforeInstallPromptEvent`, return. if (!installEvent) { return; } // Use the stashed `BeforeInstallPromptEvent` to prompt the user. installEvent.prompt(); const result = await installEvent.userChoice; // If the user installs the app, run `onInstall()`. if (result.outcome === 'accepted') { onInstall(); } }); // The user can decide to ignore the install button // and just use the browser prompt directly. In this case // likewise run `onInstall()`. window.addEventListener('appinstalled', () => { onInstall(); }); }

Comments