Die Änderungen an Qt Sensors

Qt 6 sind das Ergebnis des bewussten Bemühens, das Framework effizienter und benutzerfreundlicher zu gestalten.

Wir versuchen, die Binär- und Quellcodekompatibilität für alle öffentlichen APIs in jeder Version zu erhalten. Einige Änderungen waren jedoch unvermeidlich, um Qt zu einem besseren Framework zu machen.

In diesem Thema fassen wir diese Änderungen unter Qt Sensors zusammen und geben Anleitungen zu deren Handhabung.

Sensor Gesten-Unterstützung

Die Unterstützung für Gesten wurde entfernt. In ihrer jetzigen Form müssen die Gesten überdacht werden, um für die Entwickler nützlicher zu sein. Um dies zu verfolgen, lesen Sie bitte QTBUG-95649.

Hinweise zur Plattform

Windows

Unter Windows werden Sensoren in Qt-Installationen, die mit MSVC erstellt wurden, unterstützt.

sensorfw

Der sensorfw hat noch keinen Qt 6 Port und wird daher noch nicht von Sensoren in Qt 6 unterstützt.

TI-Sensor-Tag

Die Unterstützung für TI Sensor Tag wurde entfernt.

Entfernte Sensoren

QAltimeter, QDistanceSensor, QHolsterSensor und ihre QML-Pendants haben keine Backend-Implementierung mehr und wurden entfernt.

QIRProximitySensor, QLidSensor und QTapSensor haben nur ein sensorfw-Backend und sind daher derzeit nicht als unterstützte Sensortypen aufgeführt.

Linux

Die Unterstützung für den sysfs-Beschleunigungsmesser unter Linux wurde entfernt. Das Backend ist undokumentiert und hat seit fast 10 Jahren keine wirkliche Aktivität mehr.

API-Änderungen

Gelöschte Typendefinition für qtimestamp

Der typedef für den historischen, aus der QtMobility-Ära stammenden, qtimestamp wurde entfernt. Verwenden Sie direkt den aktuellen Typ quint64.

Umbenennung des sensor Typs string in sensorType

Die Unterklassen von QSensor implementieren einen char const* String, der den String definiert, der den Basissensor identifiziert. Dieses statische Feld type überschattete die Methode QSensor::type() der Basisklasse, was zu unnötigen Kompilierungsfehlern und daraus resultierenden Umgehungen führte. Der String type wurde nun in sensorType umbenannt.

Umbenennung der Eigenschaft LidReading::backLidChanged in backLidClosed

Der Eigenschaftsname ist nun an die frontLidClosed Eigenschaft desselben QML-Typs angeglichen.

Parameter zu QSensorBackend::sensorBusy() hinzugefügt, um auch den

den Busy-Status zu löschen

Die Eigenschaft QSensor::busy und ihr Accessor, QSensor::isBusy(), können verwendet werden, um zu prüfen, ob der Sensor beschäftigt ist oder nicht. Damit diese Eigenschaft den Zustand des Sensor-Backends besser widerspiegeln kann, akzeptiert QSensorBackend::sensorBusy() jetzt einen booleschen Parameter. Dieser busy Parameter wird verwendet, um den Backend-Busy-Status zu setzen/aufzuheben und die damit verbundene QSensor Schnittstelle zu benachrichtigen.

Der Standardwert für den Parameter QSensorBackend::sensorBusy() ist true, was das ursprüngliche Verhalten zur Folge hat (mit Ausnahme der zusätzlichen Signalausgabe). Dies bedeutet, dass die Änderungen in den meisten, wenn nicht allen Fällen nicht zwingend erforderlich sind. Stattdessen liegt es an den einzelnen Sensor-Backend-Implementierungen zu entscheiden, ob die Änderungen sinnvoll sind.

Sensor::type und QSensor::type Eigenschaften, die als konstant markiert sind

Die Eigenschaft type kann sich nach der Instanziierung nicht mehr ändern und ist sowohl in C++ als auch in QML als konstant gekennzeichnet.

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.