動的センサーバックエンド登録
静的バックエンド登録
センサーバックエンドは一般的に静的に登録される。登録はセンサライブラリが最初に使用されるときに行われ、プログラムが実行されている間、登録は有効なままです。
静的に登録されたバックエンドでも、QSensorBackendFactory が自由に 0 を返してバックエンドを作成できないことを示すため、動的な動作を示すことがあります。
動的なバックエンドの登録
ほとんどのバックエンドは静的に登録しても問題ありませんが、問題がある場合もあります。
最も明確な例は、固定されていないハードウェアを表すバックエンドです。例えば、Bluetooth で接続されたゲームコントローラなどです。電話の届く範囲に複数のゲームコントローラがある可能性があるため、プログラムは特定のゲームコントローラを使用することを記録したい。もしバックエンドが静的に登録されていたら、コントローラに関する固有の情報はなかっただろう。その代わりに、コントローラを確認するまで、登録が遅延される。
推奨される登録ポリシー
固定ハードウェア用のバックエンドは、すぐに登録されるべきです。アプリケーションは、センサが使用できることを確認できます。
リモートハードウェア用のバックエンドは、すぐに登録すべきではありません。アプリケーションはセンサーが使用できないことを知ることができる。リモートハードウェアが利用可能になったら、バックエンドを登録すべきである。アプリケーションはセンサーが使用可能になったことを知ることができる。
登録されたバックエンドに対してファクトリーから 0 を返す必要がある場合、バックエンドは登録解除されるべきです。アプリケーションはセンサーが利用できなくなったことを確認できます。ファクトリーがバックエンドを再度作成できる場合は、再登録する必要があります。アプリケーションはセンサーが再び利用可能になったことを確認できる。
基礎となるハードウェアが利用できなくなったら、バックエンドは登録解除されるべきである。バックエンドの既存のインスタンスは、アプリケーションにエラー状態を報告する必要がありますが、状況を優雅に処理する必要があります。
© 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.