Interaction

Du point de vue des applications Android, chaque capteur Android est une entité indépendante, ce qui signifie qu'il n'y a pas d'interaction entre les différents capteurs.

  • Cela est vrai même si plusieurs capteurs Android peuvent partager le même capteur physique sous-jacent
  • Par exemple : le compteur de pas, le mouvement significatif et l'accéléromètre, tous reposant sur le même accéléromètre physique, doivent pouvoir fonctionner simultanément
  • Ceci est également vrai pour les versions de réveil et de non-réveil du même capteur

Les capteurs Android doivent pouvoir fonctionner simultanément et indépendamment les uns des autres. Autrement dit, toute action sur un capteur Android ne doit pas avoir d'impact sur le comportement des autres capteurs.

Concrètement, au niveau HAL :

  • activer un capteur
  • désactiver un capteur
  • modification de la fréquence d'échantillonnage d'un capteur
  • modification de la latence de rapport maximale d'un capteur

ne peut provoquer :

  • un autre capteur activé pour arrêter de fonctionner
  • un autre capteur activé pour modifier le taux d'échantillonnage
  • un autre capteur activé pour diminuer la qualité de ses mesures
  • un autre capteur non activé pour commencer à diffuser des événements

De même, aucune des actions ci-dessus ne peut empêcher les actions (activation, désactivation et modification des paramètres) sur un autre capteur de réussir. Par exemple, si nous pouvons activer le compteur de pas doit être indépendant du fait que l'accéléromètre est actuellement activé.

Autre exemple important, un capteur de réveil activé à 5 Hz doit générer des événements à environ 5 Hz, même si sa variante sans réveil est activée à 100 Hz.