Expand description
§Geoclue: The Geoinformation Service
From the GeoClue README:
Geoclue is a D-Bus geoinformation service. The goal of the Geoclue project is to make creating location-aware applications as simple as possible.
Geoclue is Free Software, licensed under GNU GPLv2+.
Geoclue comprises the following functionalities:
- WiFi-based geolocation (accuracy: in meters)
- GPS(A) receivers (accuracy: in centimeters)
- GPS of other devices on the local network, e.g smartphones (accuracy: in centimeters)
- 3G modems (accuracy: in kilometers, unless modem has GPS)
- GeoIP (accuracy: city-level)
WiFi-based geolocation makes use of Mozilla Location Service.
If geoclue is unable to find you, you can easily fix that by installing and running a simple app on your phone. For using phone GPS, you’ll need to install the latest version of GeoclueShare app on your phone (currently, this is supported only on Android devices).
Geoclue was also used for (reverse-)geocoding but that functionality has been dropped in favour of the geocode-glib library.
For reverse Geocoding you can also use Nominatim-rs
Structs§
- Client
Proxy - The Application-specific client API
- Client
Proxy Blocking - The Application-specific client API
- Location
Proxy - The Location interface
- Location
Proxy Blocking - The Location interface
- Location
Updated - A
LocationUpdatedsignal. - Location
Updated Args LocationUpdatedsignal arguments.- Location
Updated Iterator - A
Iteratorimplementation that yieldsLocationUpdatedsignals. - Location
Updated Stream - A
Streamimplementation that yieldsLocationUpdatedsignals. - Manager
Proxy - This is the interface you use to talk to main GeoClue2
manager object at path “/org/freedesktop/GeoClue2/Manager”.
The only thing you do with this interface is to call
ManagerProxy::get_client()orManagerProxy::create_clienton it to get your application specific client object(s). - Manager
Proxy Blocking - This is the interface you use to talk to main GeoClue2
manager object at path “/org/freedesktop/GeoClue2/Manager”.
The only thing you do with this interface is to call
ManagerProxy::get_client()orManagerProxy::create_clienton it to get your application specific client object(s).
Enums§
- Accuracy
Level - Used to specify level of accuracy requested by, or allowed for a client.