Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-70796

Allow QGeoPositionInfoSource to limit updates by distance on iOS and Android

    XMLWordPrintable

    Details

    • Type: Suggestion
    • Status: Open
    • Priority: P2: Important
    • Resolution: Unresolved
    • Affects Version/s: 5.12.0 Alpha
    • Fix Version/s: None
    • Component/s: Positioning
    • Labels:
      None
    • Environment:

      iOS 11

    • Platform/s:
      iOS/tvOS/watchOS

      Description

      QGeoPositionInfoSource supports limiting the update interval by assigning values to updateInterval and minimumUpdateInterval.

      iOS's CoreLocation API doesn't support changing the update interval, and instead wants developers to set the CLLocationManager's distanceFilter and/or desiredAccuracy. (The QGeoPositionInfoSource update interval values are used for a timeout in the QGeoPositionInfoSource iOS implementation, which is useful.)

      Currently, the QGeoPositionInfoSource implementation sets the desiredAccuracy to kCLLocationAccuracyBest and doesn't set the distanceFilter. This seems to use the Core Location services frequently when updates are enabled, and is indicated on the Xcode Debug Navigator as having a high energy impact.

      Android also supports setting a distance minimum with its LocationManager's requestLocationUpdates (the value is currently always set to 0) which might help justify adding it to QGeoPositionInfoSource.

        Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

            • Assignee:
              paangele Paolo Angelelli
              Reporter:
              adolby Andrew Dolby
            • Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:

                Gerrit Reviews

                There are no open Gerrit changes