Registro Dinámico del Sensor Backend
Registro Estático del Sensor
Los backends de los sensores son generalmente registrados estáticamente. El registro ocurre cuando la librería de sensores es usada por primera vez y el registro permanece en efecto mientras el programa corre.

Los backends registrados estáticamente pueden exhibir algún comportamiento dinámico ya que el QSensorBackendFactory es libre de devolver 0 para indicar que un backend no puede ser creado.
Registro dinámico de backends
Aunque el registro estático está bien para la mayoría de los backends, hay algunas situaciones en las que esto es problemático.
El ejemplo más claro son los backends que representan hardware no fijo. Por ejemplo, un mando de juegos conectado por Bluetooth. Como puede haber más de un mando de juegos dentro del alcance del teléfono, el programa quiere registrar que se debe utilizar un mando de juegos específico. Si el backend se hubiera registrado estáticamente, no habría información única sobre el controlador. En su lugar, el registro se retrasa hasta que se ve el controlador.

Política de registro sugerida
Un backend para hardware fijo debería registrarse inmediatamente. Las aplicaciones pueden ver que el sensor puede ser utilizado.
Un backend para hardware remoto no debería ser registrado inmediatamente. Las aplicaciones pueden ver que el sensor no puede utilizarse. Cuando el hardware remoto esté disponible, el backend debe ser registrado. Las aplicaciones pueden ver que el sensor está disponible ahora.
Si es necesario devolver 0 de una fábrica para un backend que fue registrado, el backend debería ser desregistrado. Las aplicaciones pueden ver que el sensor ya no está disponible. Si la fábrica puede crear el backend de nuevo, debería ser re-registrado. Las aplicaciones pueden ver que el sensor está disponible de nuevo.
Cuando el hardware subyacente ya no está disponible, el backend debe ser desregistrado. Las instancias existentes del backend deberían reportar estados de error a la aplicación pero deberían manejar la situación con gracia.
© 2026 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.