diff options
author | Denis Shienkov <denis.shienkov@gmail.com> | 2018-05-19 21:23:48 +0300 |
---|---|---|
committer | Volker Krause <volker.krause@kdab.com> | 2018-08-16 15:40:40 +0000 |
commit | f0472774b36c862f5fb6822f2d4d63a967d1eaec (patch) | |
tree | 3b0365e6b48637ec8f946b6e9dee5f8fb890919e /src/plugins/position/geoclue2/org.freedesktop.GeoClue2.Client.xml | |
parent | 77556ab2fbb808a45e401e039820641e94f4fcb9 (diff) | |
download | qtlocation-f0472774b36c862f5fb6822f2d4d63a967d1eaec.tar.gz |
Long live for the geoclue2 position plugin
Geoclue2 requires the appropriate application's desktop id,
to allow an access to the location service.
This desktop id should be added to the /etc/geoclue/geoclue.conf
file, e.g.:
[my-app]
allowed=true
system=true
users=
Also, this desktop id should be imported to the Geoclue2
application via the QT_GEOCLUE_APP_DESKTOP_ID environment
variable, e.g.:
export QT_GEOCLUE_APP_DESKTOP_ID=my-app
Note: Tested on stationar PC with the ArchLinux.
Task-number: QTBUG-43435
Done-with: Volker Krause <vkrause@kde.org>
Change-Id: I5cc204cca966cb23a59ccffbc83fd8dc7a7c4eb6
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Diffstat (limited to 'src/plugins/position/geoclue2/org.freedesktop.GeoClue2.Client.xml')
-rw-r--r-- | src/plugins/position/geoclue2/org.freedesktop.GeoClue2.Client.xml | 122 |
1 files changed, 122 insertions, 0 deletions
diff --git a/src/plugins/position/geoclue2/org.freedesktop.GeoClue2.Client.xml b/src/plugins/position/geoclue2/org.freedesktop.GeoClue2.Client.xml new file mode 100644 index 00000000..4a9399b7 --- /dev/null +++ b/src/plugins/position/geoclue2/org.freedesktop.GeoClue2.Client.xml @@ -0,0 +1,122 @@ +<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" +"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd"> + +<!-- + GeoClue 2.0 Interface Specification + + Copyright 2013 Red Hat, Inc. +--> + +<node> + + <!-- + org.freedesktop.GeoClue2.Client: + @short_description: The Application-specific client API + + This is the interface you use to retrieve location information and receive + location update signals from GeoClue service. You get the client object to + use this interface on from org.freedesktop.GeoClue2.Manager.GetClient() + method. + --> + <interface name="org.freedesktop.GeoClue2.Client"> + <!-- + Location: + + Current location as path to a #org.freedesktop.GeoClue2.Location object. + Please note that this property will be set to "/" (D-Bus equivalent of + null) initially, until Geoclue finds user's location. You want to delay + reading this property until your callback to + #org.freedesktop.GeoClue2.Client::LocationUpdated signal is called for + the first time after starting the client. + --> + <property name="Location" type="o" access="read"/> + + <!-- + DistanceThreshold: + + Contains the current distance threshold in meters. This value is used + by the service when it gets new location info. If the distance moved is + below the threshold, it won't emit the LocationUpdated signal. + The default value is 0. When TimeThreshold is zero, it always emits + the signal. + --> + <property name="DistanceThreshold" type="u" access="readwrite"> + <annotation name="org.freedesktop.Accounts.DefaultValue" value="0"/> + </property> + + <!-- + TimeThreshold: + + Contains the current time threshold in seconds. This value is used + by the service when it gets new location info. If the time since the + last update is below the threshold, it won't emit the LocationUpdated + signal. The default value is 0. When TimeThreshold is zero, it always + emits the signal. + --> + <property name="TimeThreshold" type="u" access="readwrite"> + <annotation name="org.freedesktop.Accounts.DefaultValue" value="0"/> + </property> + + <!-- + DesktopId: + + The desktop file id (the basename of the desktop file). This property + must be set by applications for authorization to work. + --> + <property name="DesktopId" type="s" access="readwrite"/> + + <!-- + RequestedAccuracyLevel: + + The level of accuracy requested by client, as + <link linkend="GClueAccuracyLevel">GClueAccuracyLevel</link>. + + Please keep in mind that the actual accuracy of location information is + dependent on available hardware on your machine, external resources + and/or how much accuracy user agrees to be confortable with. + --> + <property name="RequestedAccuracyLevel" type="u" access="readwrite"/> + + <!-- + Active: + + If client is active, i-e started successfully using + org.freedesktop.GeoClue2.Client.Start() and receiving location updates. + + Please keep in mind that geoclue can at any time stop and start the + client on user (agent) request. Applications that are interested in + in these changes, should watch for changes in this property. + --> + <property name="Active" type="b" access="read"/> + + <!-- + Start: + + Start receiving events about the current location. Applications should + hook-up to #org.freedesktop.GeoClue2.Client::LocationUpdated signal + before calling this method. + --> + <method name="Start"/> + + <!-- + Stop: + + Stop receiving events about the current location. + --> + <method name="Stop"/> + + <!-- + LocationUpdated: + @old: old location as path to a #org.freedesktop.GeoClue2.Location object + @new: new location as path to a #org.freedesktop.GeoClue2.Location object + + The signal is emitted every time the location changes. + The client should set the DistanceThreshold property to control how + often this signal is emitted. + --> + <signal name="LocationUpdated"> + <arg name="oldLocation" type="o"/> + <arg name="newLocation" type="o"/> + </signal> + </interface> +</node> |