**2. Sensors on smartphones**

Many sensors are available today on smartphones: most of them are related to internal applications (proximity sensor, light sensors, etc.) while other ones (e.g., GNSS, INS, and cameras) allow to obtain a positioning. One of the biggest problems is represented by the operating system (OS) installed inside the smartphone: each OS has different ways to manage data that comes from internal sensors, not to mention the use of these data made by the apps.

While sensor availability varies from device to device, it can also vary between iOS and Android versions. The biggest changes were made in this last OS, due to several platform releases: in Android 1.5 (API Level 3) many sensors have been introduced even if some of them were not employed and not accessible before Android 2.3 (API Level 9). Similarly, in Android 2.3 (API Level 9) and Android 4.0 (API Level 14) some other sensors have been introduced and some others have been removed and replaced by newer ones.

**Figure 1** shows the availability of each sensor on a platform-by-platform basis, considering the only four platforms that involved sensor changes.

In this chapter, we focus the attention only on sensors useful for positioning: GNSS and INS chipset and cameras for images. Hereinafter, a brief description of these sensors is provided.
