4 Replies
      Latest reply on Aug 9, 2017 12:58 AM by eskimo
      kreuz45 Level 1 Level 1 (0 points)

        https://developer.apple.com/library/content/documentation/Performance/Conceptual/EnergyGuide-iOS/LocationBestPractices.html says

        • Significant-change location updates wake the system and your app once every 15 minutes, at minimum, even if no location changes have occurred.

        I could not find details about what happens (which delegate methods will get called) after 15 minutes with no location changes.

        I have confirmed my app awaken after I move about 500m, but never confirmed my app awaken if I stay same location more than hours.

        1. Is there any document(s) describing details about what happens on `even if no location changes have occurred`?
        2. Is there any additional code needed to get my app awaken even if no location changes have occured?
        3. Which delegate method(s) will get called? locationManager(_:didUpdateLocations:)?
        • Re: Significant-Change Location Updates with no location changes
          eskimo Apple Staff Apple Staff (13,405 points)

          I was quite surprised by that quote from the docs so I ran your question past the DTS experts on iOS’s location subsystem.  My favourite response was “The documentation is wrong, except it is not, except it is.” (-:

          There’s some complex stuff going on here, more than I’m prepared to explain even if I did understand it fully, but the take-home messages are:

          • Significant location change (SLC) is more expensive, power wise, than region and visit monitoring

          • If you use SLC, you should be tolerant of being resumed even if there was no location change

          Note the wording in the last point: simply using SLC does not guarantee that your app will be resumed as some periodic rate.

          Beyond that, my recommendation is that you file a bug against this doc to clarify this point, pointing out the discrepancy between the behaviour you’ve observed and the behaviour that the doc seems to imply.

          Please post your bug number, just for the record.

          Share and Enjoy

          Quinn “The Eskimo!”
          Apple Developer Relations, Developer Technical Support, Core OS/Hardware
          let myEmail = "eskimo" + "1" + "@apple.com"

          1 of 1 people found this helpful