動的センサーバックエンド登録

静的バックエンド登録

センサーバックエンドは一般的に静的に登録される。登録はセンサライブラリが最初に使用されるときに行われ、プログラムが実行されている間、登録は有効なままです。

静的に登録されたバックエンドでも、QSensorBackendFactory が自由に 0 を返してバックエンドを作成できないことを示すため、動的な動作を示すことがあります。

動的なバックエンドの登録

ほとんどのバックエンドは静的に登録しても問題ありませんが、問題がある場合もあります。

最も明確な例は、固定されていないハードウェアを表すバックエンドです。例えば、Bluetooth で接続されたゲームコントローラなどです。電話の届く範囲に複数のゲームコントローラがある可能性があるため、プログラムは特定のゲームコントローラを使用することを記録したい。もしバックエンドが静的に登録されていたら、コントローラに関する固有の情報はなかっただろう。その代わりに、コントローラが見えるまで、登録が遅延される。

推奨される登録ポリシー

固定ハードウェア用のバックエンドは、すぐに登録されるべきです。アプリケーションは、センサが使用できることを確認できます。

リモートハードウェア用のバックエンドは、すぐに登録すべきではありません。アプリケーションはセンサーが使用できないことを知ることができる。リモートハードウェアが利用可能になったら、バックエンドを登録すべきである。アプリケーションはセンサーが使用可能になったことを知ることができる。

登録されたバックエンドに対してファクトリーから 0 を返す必要がある場合、バックエンドは登録解除されるべきです。アプリケーションはセンサーが利用できなくなったことを確認できます。ファクトリーがバックエンドを再度作成できる場合は、再登録する必要があります。アプリケーションはセンサーが再び利用可能になったことを確認できる。

基礎となるハードウェアが利用できなくなったら、バックエンドは登録解除されるべきである。バックエンドの既存のインスタンスは、アプリケーションにエラー状態を報告する必要がありますが、状況を優雅に処理する必要があります。

©2024 The Qt Company Ltd. 本書に含まれるドキュメントの著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。