Qt位置定位Gypsy插件#

使用Gypsy守护进程提供卫星信息

概览#

该插件是Gypsy守护进程的接口。为了能够运行,它要求在系统上已安装并运行守护进程。

该插件使用D-Bus和GLib连接到GPS设备并提供卫星信息。

目前该插件提供定位信息。

可以使用提供者名称 gypsy 来加载该插件。

参数#

以下表格列出了可以传递给gypsy插件的参数。

参数

描述

deviceName

将用于提供卫星信息的设备名称(或设备文件的路径)。典型值可以是 /dev/ttyUSB0/dev/ttyACM0

gconfKey

用于从GConf配置系统中提取设备名称的密钥。

插件支持两种指定设备名称的方法

  • 直接使用deviceName插件参数指定设备名称。

  • 使用gconfKey插件参数指定配置密钥,并从GConf配置系统提取设备名称。这种方法在有其他基于GConf的应用程序中已经指定了设备名称时很有用。

默认情况下,当未指定任何参数时,插件将尝试使用以下硬编码密钥从GConf配置系统中提取设备名称

/apps/geoclue/master/org.freedesktop.Geoclue.GPSDevice

使用GConf设置参数#

要用gconftool-2指定GConf配置系统中某个键的值,可以按照以下方式进行

gconftool-2 -t string -s /apps/geoclue/master/org.freedesktop.Geoclue.GPSDevice /dev/ttyUSB0

示例#

以下示例展示了如何从C++中创建一个gypsy卫星信息源。

直接指定设备名称

QVariantMap parameters;
parameters["deviceName"] = "/dev/ttyACM0";
QGeoSatelliteInfoSource *source = QGeoSatelliteInfoSource::createSource("gypsy", parameters, this);

使用GConf密钥

QVariantMap parameters;
parameters["gconfKey"] = "/apps/myapp/mykey";
QGeoSatelliteInfoSource *source = QGeoSatelliteInfoSource::createSource("gypsy", parameters, this);