Qt ポジショニング
Qt Positioning API は、QML と C++ インタフェースを通じて測位情報を提供します。
現在、この API はAndroid、iOS、macOS、Linux、Windowsでサポートされています(GPS 受信機は NMEA センテンスを提供するシリアルポートとして、またはWindows.Devices.Geolocation
を使用して公開されます)。
概要
Qt Positioning API を使用すると、衛星、無線 LAN、テキストファイルなど、さまざまなソースから位置を特定できます。その情報を使って、例えば地図上の位置を決定することができます。さらに、APIを使って衛星情報を取得し、エリアベースのモニタリングを実行することもできます。
モジュールの使用
QML API
本モジュールの QML タイプは、QtPositioning
インポートから利用できます。この型を使用するには、.qml ファイルに以下の import 文を追加してください:
import QtPositioning
C++ API
Qt モジュールの C++ API を使用するには、モジュールライブラリを直接リンクするか、他の依存関係を通 してリンクする必要があります。CMakeや qmakeなど、いくつかのビルドツールはこのための専用サポートを持っています。
CMake でのビルド
find_package()
コマンドを使用して、必要なモジュール・コンポーネントをQt6
パッケージから探します:
find_package(Qt6 REQUIRED COMPONENTS Positioning)
target_link_libraries(mytarget PRIVATE Qt6::Positioning)
詳細については、CMakeによるビルドの概要を参照してください。
qmakeでのビルド
モジュールをqmakeでビルドするように設定するには、プロジェクトの.proファイルにQT
変数の値としてモジュールを追加します:
QT += positioning
パーミッション
Qt 6.6 から、Qt Positioning モジュールはlocation のパーミッションを処理するために新しいQPermission API を使用します。つまり、Qt 自身がこれらのパーミッションの問い合わせをしなくなったので、クライアントアプリケーションから直接行う必要があります。
新しいQPermission APIをアプリケーションに統合する方法の例については、Application Permissionsのページを参照してください。
記事とガイド
- ポジショニング入門(C++用
- ポジショニング入門(QML
- Qtポジショニング・プラグイン
- Qt ポジショニングにおける C++ と QML コード間のインターフェース
- Android における Qt ポジショニング
- iOSでのQtポジショニング
例
リファレンス
モジュールの進化
Qt Positioning の変更点には、Qt 6 シリーズで行われたモジュールの API と機能の重要な変更が記載されています。
ライセンス
Qt Positioning はThe Qt Company の商用ライセンスで利用できます。また、フリーソフトウェアライセンスでも利用可能です。Qt 5.4 以降、これらのフリーソフトウェアライセンスはGNU Lesser General Public License, version 3 またはGNU General Public License, version 2 です。詳細はQt ライセンスを参照してください。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。