Interaktion

Aus Sicht von Android-Anwendungen ist jeder Android-Sensor ein unabhängiges Element. Das bedeutet, dass es keine Interaktion zwischen den verschiedenen Sensoren gibt.

  • Das gilt auch dann, wenn mehrere Android-Sensoren denselben zugrunde liegenden physischen Sensor verwenden.
  • Beispiel: Schrittzähler, signifikante Bewegungen und Beschleunigungsmesser, die alle auf demselben physischen Beschleunigungsmesser basieren, müssen gleichzeitig funktionieren können.
  • Dies gilt auch für Versionen desselben Sensors mit und ohne Weckfunktion.

Android-Sensoren müssen gleichzeitig und unabhängig voneinander funktionieren. Das bedeutet, dass jede Aktion auf einen Android-Sensor sich nicht auf das Verhalten der anderen Sensoren auswirken darf.

Insbesondere auf HAL-Ebene:

  • Sensor aktivieren
  • Deaktivierung eines Sensors
  • Änderung der Abtastrate eines Sensors
  • die maximale Berichtslatenz eines Sensors ändern

kann nicht zu Folgendem führen:

  • ein anderer aktivierter Sensor nicht mehr funktioniert
  • einen anderen aktivierten Sensor, um die Abtastrate zu ändern
  • einen anderen aktivierten Sensor, um die Qualität der Messungen zu verringern
  • einen anderen nicht aktivierten Sensor, um mit der Übermittlung von Ereignissen zu beginnen

Außerdem können durch die oben genannten Aktionen keine Aktionen (Aktivierung, Deaktivierung und Parameteränderungen) an einem anderen Sensor verhindert werden. Beispielsweise muss die Aktivierung des Schrittzählers unabhängig davon erfolgen, ob der Beschleunigungsmesser derzeit aktiviert ist.

Ein weiteres wichtiges Beispiel: Ein Wecksensor, der mit 5 Hz aktiviert wird, muss Ereignisse mit etwa 5 Hz generieren, auch wenn seine Variante ohne Weckfunktion mit 100 Hz aktiviert wird.