Low cost or price-sensitive mobile phones often come without GPS and Wi-Fi. These phones are meant to do what mobile phones are intended to be used for — Talk. However, the location of the user can still be detected on such phones using cellular towers. Cell ID Positioning and cell tower triangulation are two different ways to get location information from cell towers. Cell ID result accuracy is only 200-1000 meters, hence it is used as the last option for most location detection methodologies.
Cell ID Positioning uses your mobile network's cell tower to find your location. This involves the nearest tower your phone connects to in order to let you place calls. Cell tower triangulation, on the other hand, uses all the Cellular Towers around you to calculate your position based on the signal strength your phone receives from each of the towers. Triangulation is more accurate, but a slower process.
The iOS SDK has a region monitoring API that we will discuss in later chapters. This API is CLRegion
, which monitors the iPhone location and triggers an alert if you enter or leave a region. It works by using the Cellular Tower position as the trigger. When the iOS device detects a different Cellular Tower using the Triangulation technique to ascertain that the user has indeed crossed or entered a region, it triggers an alert to the application. This is an efficient way of location tracking without using GPS (and hence, more battery juice).
Note
It is important to acknowledge privacy and security issues for end users while developing your applications and choosing the type of location detection and storage. In April 2011, it was discovered that Apple kept an unencrypted location database on your iPhones, even if the Location Setting was turned off. This file could tell any hacker where you have been and the timing details. Apple rectified this with a software upgrade, but it has been an eye opener for user privacy and security concerns.