Qt Positioning Plugin para Android
Descripción
El plugin Android de Qt Positioning envuelve APIs nativas de Android y proporciona acceso a información de posicionamiento y satélite.
El plugin puede cargarse utilizando el nombre de proveedor android.
Parámetros
La siguiente tabla enumera los parámetros que pueden pasarse al complemento de Android.
| Parámetro | Descripción |
|---|---|
| useMslAltitude | Este parámetro se introdujo en Qt 6.8. Determina si el plugin intentará proporcionar una altitud por encima del nivel medio del mar (MSL). El valor por defecto es false, lo que significa que proporciona la altitud en formato WGS84. Este parámetro sólo es relevante para Android 14 y posteriores. Consulte la sección Conversión de al titud para más detalles. |
Conversión de altitud
Android proporciona tradicionalmente la altitud sobre el elipsoide de referencia del Sistema Geodésico Mundial 1984 (WGS84). Sin embargo, a partir de Android 14, se introdujo una nueva clase AltitudeConverter. Esta clase permite convertir la altitud WGS84 en altitud sobre el formato Mean Sea Level (MSL).
Si el parámetro del complemento useMslAltitude se establece en true, y la aplicación se ejecuta en Android 14 o posterior, el componente QGeoCoordinate::altitude de los objetos QGeoPositionInfo recuperados durante las actualizaciones de posición contendrá la altitud MSL.
Nota: Según la documentación de Android, la conversión a la altitud MSL puede tardar varios segundos. Esto significa que las peticiones lastKnownPosition() pueden ejecutarse durante más tiempo cuando esta función está activada, ya que el método es síncrono. Otras peticiones de actualización de posición no se ven afectadas.
Ejemplos
Los siguientes ejemplos muestran cómo crear un android PositionSource desde C++ y QML.
QML
El siguiente fragmento crea un PositionSource sin parámetros. La altitud se notificará en formato WGS84.
PositionSource { name: "android" }
El siguiente fragmento añade explícitamente el useMslAltitude PluginParameter y establece su valor en true. Este PositionSource informará de la altitud en formato MSL.
PositionSource { name: "android" PluginParameter { name: "useMslAltitude" value: true } }
C++
El siguiente fragmento muestra cómo usar C++ para crear un position source que informa de la altitud en formato MSL.
QVariantMap params; params["useMslAltitude"] = true; QGeoPositionInfoSource *positionSource = QGeoPositionInfoSource::createSource("android", params, this);
© 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.