Comment utilise-t-on les notifications de bureau Chrome ? J'aimerais que cela utilise cela dans mon propre code.
Mise à jour : voici un article de blog expliquant les notifications de webkit avec un exemple.
javascript
desktop
google-chrome
notifications
Sridhar Ratnakumar
la source
la source
Réponses:
Dans les navigateurs modernes, il existe deux types de notifications:
L'appel d'API prend les mêmes paramètres (sauf pour les actions - non disponibles sur les notifications de bureau), qui sont bien documentés sur MDN et pour les travailleurs de service, sur le site Web Fundamentals de Google .
Vous trouverez ci-dessous un exemple de notifications de bureau pour Chrome, Firefox, Opera et Safari. Notez que pour des raisons de sécurité, à partir de Chrome 62, l' autorisation pour l'API de notification ne peut plus être demandée à partir d'un iframe d'origine croisée , nous ne pouvons donc pas faire de démonstration à l'aide des extraits de code de StackOverflow. Vous devrez enregistrer cet exemple dans un fichier HTML sur votre site / application et assurez-vous d'utiliser
localhost://
ou HTTPS.Nous utilisons l' API W3C Notifications . Ne confondez pas cela avec l' API de notification des extensions Chrome , qui est différente. Les notifications d'extensions Chrome ne fonctionnent évidemment que dans les extensions Chrome et ne nécessitent aucune autorisation spéciale de l'utilisateur.
Les notifications W3C fonctionnent dans de nombreux navigateurs (voir le support sur caniuse ) et nécessitent une autorisation utilisateur. En tant que meilleure pratique, ne demandez pas cette autorisation dès le départ. Expliquez d'abord à l'utilisateur pourquoi il souhaite recevoir des notifications et consultez d'autres modèles de notifications push. .
Notez que Chrome n'honore pas l'icône de notification sous Linux, en raison de ce bogue .
Les derniers mots
La prise en charge des notifications est en constante évolution, plusieurs API étant obsolètes ces dernières années. Si vous êtes curieux, consultez les modifications précédentes de cette réponse pour voir ce qui fonctionnait auparavant dans Chrome et pour découvrir l'histoire des notifications HTML riches.
Maintenant, la dernière norme se trouve à https://notifications.spec.whatwg.org/ .
Quant à savoir pourquoi il y a deux appels différents dans le même sens, selon que vous travaillez dans un service ou non - consultez ce ticket que j'ai déposé pendant que je travaillais chez Google .
Voir aussi notify.js pour une bibliothèque d'assistance.
la source
Vérifiez la conception et les spécifications de l'API (c'est toujours un brouillon) ou vérifiez la source de (la page n'est plus disponible) pour un exemple simple: c'est principalement un appel à
window.webkitNotifications.createNotification
.Si vous voulez un exemple plus robuste (vous essayez de créer votre propre extension Google Chrome, et souhaitez savoir comment gérer les autorisations, le stockage local, etc.), consultez l' extension de notification Gmail : téléchargez le fichier crx au lieu d'installer , décompressez-le et lisez son code source.
la source
Il semble que ce
window.webkitNotifications
soit déjà obsolète et supprimé. Cependant, il existe une nouvelle API , et elle semble également fonctionner dans la dernière version de Firefox.codepen
la source
else
à la fin pour vous dire quel est le problème. Vous avez probablement des notifications globalement désactivées comme moi: \J'aime: http://www.html5rocks.com/en/tutorials/notifications/quick/#toc-examples mais il utilise d'anciennes variables, donc la démo ne fonctionne plus.
webkitNotifications
est maintenantNotification
.la source
J'ai fait ce simple wrapper de notification. Il fonctionne sur Chrome, Safari et Firefox.
Probablement sur Opera, IE et Edge également, mais je ne l'ai pas encore testé.
Obtenez simplement le fichier notify.js ici https://github.com/gravmatt/js-notify et placez-le dans votre page.
Obtenez-le sur Bower
Voilà comment cela fonctionne:
Vous devez définir le titre mais l'objet json comme deuxième argument est facultatif.
la source
Voici une belle documentation sur les API,
https://developer.chrome.com/apps/notifications
Et, explication vidéo officielle de Google,
https://developers.google.com/live/shows/83992232-1001
la source
Notify.js est un wrapper autour des nouvelles notifications webkit. Cela fonctionne plutôt bien.
http://alxgbsn.co.uk/2013/02/20/notify-js-a-handy-wrapper-for-the-web-notifications-api/
la source
la source
Notification.requestPermission();
,var notification = new Notification('hello', { body: "Hey there!", });
la notification s'affiche.