Following the mobile dev’s GPS meetup: an interview with iOS developer Dzmitry.
What was discussed?
The last two OS releases introduced changes to Apple Core Location connected with additional limitations on access to location tracking and the framework’s API in general.
Specifics of the location tracking mechanism for regular users. How GPS-based location tracking works. Additional coordinate tracking technologies (A-GPS, DGPS, WPS).
– “Starting with iOS 13 (2019), Apple has been updating the Core Location API to increase the user’s involvement in giving apps permission to use the API. The concept of “Provisional permission” is introduced. It means that all rights will be revoked when the app is not in use. Thus, for instance, coordinates may be obtained during the time the app is onscreen.
Also they introduced limitations for apps’ background execution modes. To use the API in these modes, one needs to create a special request to the user which is delayed until the last moment, for when the app is shifted to background mode.
In iOS 14 (2020), Apple takes it a step further. The API’s creators impose a limit on the accuracy of the coordinates obtained, with the radius being anywhere between 1 and 20 km. For reference, the usual radius is between 5-10 and 100 m. This complicates the developer’s job: you need to take into account all possible limitations and process them properly.
Dzmitry, is it possible to stay undetected these days?)
– “Safety-wise, it’s hard to say. The system limits third-party applications in terms of coordinate tracking. It means that the app has to request and obtain the user’s consent. But the OS itself definitely collects the user’s data “under the hood”. For instance, this is done to create a base for binding wi-fi hotspot data to coordinates (the system scans a space, obtains information on active wi-fi hotspots and, if the GPS coordinates for this space are available, binds this information). That means that even with disabled GPS features, while you access the Internet, your coordinates can be obtained.
If one is so inclined, one can detect a phone’s location using mobile base stations. You don’t even need to be online for that. The accuracy of coordinates may be anything from 100 m to 1.5 km, depending on the density of the base stations.