Qt Positioning API 憑藉 QML 和 C++ 接口提供位置信息。
目前,API 支持
Android
,
iOS
,
macOS
,
Linux
,和
Windows
(采用將 GPS 接收器暴露成串口提供 NMEA 句子或使用
Windows.Devices.Geolocation
).
Qt Positioning API 允許通過使用各種可能的源 (包括衛星、wifi 或文本文件) 來確定位置。然後,可以使用該信息 (例如:確定地圖位置)。此外,可以使用 API 以檢索衛星信息並履行基於區域的監視。
模塊的 QML 類型是可用的透過
QtPositioning
導入。要使用類型,添加以下 import 語句到 .qml 文件:
import QtPositioning
使用 Qt 模塊的 C++ API 要求直接 (或透過其它依賴) 鏈接到模塊庫。幾個構建工具對此有專用支持,包括 CMake and qmake .
使用
find_package()
命令定位所需模塊組件在
Qt6
包:
find_package(Qt6 REQUIRED COMPONENTS Positioning)
target_link_libraries(mytarget PRIVATE Qt6::Positioning)
更多細節,見 構建采用 CMake 概述。
要配置采用 qmake 構建模塊,添加模塊作為值為
QT
變量在工程的 .pro 文件:
QT += positioning
從 Qt 6.6 開始,Qt Positioning 模塊使用新 QPermission API 處理 location 權限。這意味著 Qt 自身不再查詢這些權限,所以,做到這需要直接從客戶端應用程序。
請參考 應用程序權限 頁瞭解範例如何集成新 QPermission API 進應用程序。
Qt Positioning 的變化 列齣瞭 Qt 的 Qt 6 係列在模塊 API 和功能上所做齣的重要改變。
Qt Positioning 在商業許可下是可用的來自 Qt 公司 。此外,它在自由軟件許可下也是可用的。從 Qt 5.4 起,這些自由軟件許可是 GNU LGPL (次一般公共許可) 第 3 版 ,或 GNU GPL (一般公共許可) 第 2 版 。見 Qt 許可 進一步瞭解細節。