So geht’s: Mit diesen Android-Klassen kommen Tablet-Sensoren in Schwung

Das Besondere an Tablet-PCs sind neben ihrer Touch-Bedienung vor allem ihre Sensoren, mit denen sich allerlei Funktionen in Apps implementieren lassen. Damit kann beispielsweise die genaue Lage des Tablet-Rechners bestimmt werden, die Geoposition und vieles mehr. Die folgende Grafik verdeutlicht, welche Sensoren von Intel-Prozessoren unterstützt werden, die in Android-Tablets zum Einsatz kommen:

Diese Sensoren werden von Intel-SoC-Prozessoren unterstützt

Dabei übernehmen die Sensoren folgende Aufgaben: Die Bewegungssensoren sind für die Bereiche gradlinige und kreisförmige Bewegungen zuständig (Accelerometer, Gyroscope). Die Positionsseonsoren hingegen fungieren als Kompass (Magnetormeter), für das Aufspüren nahe gelegener Objekte (Proximity) und das genaue Bestimmen der Geo-Position (GPS). Und die Umgebungssensoren passen automatisch die Helligkeit des Bildschirms an (ALS).

Sieht man sich das Android Sensor Framework und die zugehörigen Klassen an, wird schnell klar: alles an Bord!

  • Mit der Klasse SensorManager() lässt sich mit wenigen Codezeilen eine Service-Instanz aufrufen und verwalten. Die dazu notwendigen Methoden kümmern sich um das Ansprechen des jeweiligen Sensors, um das Ein- und Ausschalten des zugehörigen Eventhandlers und einiges mehr.
  • Die Klasse Sensor() initiiert für jeden Sensor die jeweilige Instanz.
  • Die SensorEvent()-Klasse gibt die Sensordaten an das Anwendungsprogramm weiter. Dazu gehören die noch nicht aufbereiteten Sensordaten sowie deren Genauigkeit, die Bezeichnung des Sensors und die genaue Zeitangabe, wann der Sensor aktiviert wurde.
  • Die Klasse SensorEventListener() schließlich sorgt sich um den Datenaustausch zwischen Sensor und App, sobald sich die Sensordaten wie die Koordinaten oder die Genauigkeit derselben ändern.

Darüber hinaus verrät der zugehörige Beitrag auf Intel Software Network, wie das Koordinatensystem eines Tablet-PCs funktioniert, wie sich die Sensoren mithilfe der Klassen onAccuracyChanged() und onSensorChanged() überwachen und kontrollieren lassen, und betrachtet die Sensoren allesamt im Detail.

Das ist also eine ganze Menge Stoff für Intel-Android-Entwickler. Viel Spaß beim Lesen und Durcharbeiten!

Author: Florian Kessler

Leave a Reply

Your email address will not be published. Required fields are marked *