MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

Idle API

Non standard
Cette fonctionnalité n'est ni standard, ni en voie de standardisation. Ne l'utilisez pas pour des sites accessibles sur le Web : elle ne fonctionnera pas pour tout utilisateur. Il peut également y avoir d'importantes incompatibilités entre les implémentations et son comportement peut être modifié dans le futur.

Cette API est disponible sur Firefox OS pour des applications certifiées seulement.

Summary

L'API Idle est utilisée pour notifier une application lorsque l'utilisateur est inactif. Cela permet à une application d'intervenir lorsque l'utilisateur ne fait rien avec son appareil. Le cas d'utilisation le plus courant consiste à économiser la batterie; dans ce cas, Il est couramment utilisé en conjonction avec le Power Management API.

Surveiller un utilisateur inactif

Quand une application veut être averti de l'inactivité du système, elle doit inscrire un idle observer. Un idle observer est un objet composé de trois propriétés :

  • Une propriété time qui définit le temps, exprimé en secondes, qui doit passer après la dernière action de l'utilisateur avant que l'utilisateur est considéré comme inactif.
  • Une propriété onidle, qui est une fonction appelée lorsque l'utilisateur est considéré comme inactif.
  • Une propriété onactive, qui est une fonction appelée lorsque l'utilisateur redevient actif.

Exemple: diminuer la luminosité de l'écran lorsque l'utilisateur est inactif

Dans cet exemple, un observateur idle est mis en place pour réduire la luminosité de l'écran à 50 % lorsque l'utilisateur est inactif pendant 10 secondes et le restaurer à 100 % lorsque l'utilisateur est de nouveau actif. Un deuxième observateur est mis en place pour éteindre l'écran lorsque l'utilisateur est inactif pendant au moins 15 secondes.

// REMARQUE: mozPower fait partie de l'API de gestion de puissance (Power Management API)

var fadeLight = {
  time: 10, // 10 secondes

  onidle: function () {
    // L'utilisateur ne semble pas actif, nous allons diminuer la luminosité de l'écran
    navigator.mozPower.screenBrightness = 0.5;
  },

  onactive: function () {
    // OK, l'utilisateur est de retour, nous allons ré-éclairer l'écran
    navigator.mozPower.screenBrightness = 1;
  }
}

var screenOff = {
  time: 15, // quinze seconds

  onidle: function () {
    // OK, l'utilisateur a eu sa chance, mais il est vraiment inactif, nous allons désactiver l'écran
    navigator.mozPower.screenEnabled = false;
  },

  onactive: function () {
    // OK, l'utilisateur est de retour, nous allons allumer l'écran
    navigator.mozPower.screenEnabled = true;
  }
}

// Enregistrer les observateurs inactifs

navigator.addIdleObserver(fadeLight);
navigator.addIdleObserver(screenOff);

Ce code définit deux objets idle observer : fadeLight et screenOff, puis appelle navigator.addIdleObserver() une fois pour chacun d'eux afin de les enregistrer dans le système. Les applications peuvent mettre en place autant d'observateurs inactif que nécessaire.

Si l'application n'a plus besoin de surveiller l’inactivité de l'utilisateur, il peut enlever les observateurs en appelant la méthode navigator.removeIdleObserver(), comme indiqué ci-dessous :

navigator.removeIdleObserver(fadeLight);
navigator.removeIdleObserver(screenOff);

Spécification

Ne fait partie d'aucune spécification pour le moment ; cependant, cette API sera discutée au W3C dans le cadre de la System Applications Working Group.

Voir aussi

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : wordsbybird
 Dernière mise à jour par : wordsbybird,