additional Source Properties
A set of key-value pairs that provide additional metadata, such as source and accuracy details of this Location. When a Location is created, implementation-specific or platform-specific details about the location may be added to this dictionary of additional source properties. This information is provided as a set of key-value pairs, where the (case-sensitive) String key describes the type of data held in the Any value. Values are basic data types such as string, numeric, boolean, or date.
The specific keys and corresponding values available in the dictionary are determined by the location provider. However, this API recognizes the following well-known keys and exposes them through the SourceProperties.Keys object:
"floor" (an integer value). The floor number of the Location when the location is in a building. Use SourceProperties.Keys.FLOOR to reference this key.
"floorLevelId" (a string value). The unique ID of the level feature when inside a building, in accordance with the ArcGIS Indoors Information Model. Use SourceProperties.Keys.FLOOR_LEVEL_ID to reference this key.
"positionSource" (a string value). Indicates the source used to determine the position. For example: GNSS, AppleIPS, BLE, WIFI, CELL, IP. A Location may have multiple position sources, in which case this value returns a list of comma-separated values. Use SourceProperties.Keys.POSITION_SOURCE to reference this key.
"satelliteCount" (an integer value). The number of satellites used to fix the Location. Use SourceProperties.Keys.SATELLITE_COUNT to reference this key.
"transmitterCount" (an integer value). The number of transmitters used to determine an indoor positioning system (IPS) position. Use SourceProperties.Keys.TRANSMITTER_COUNT to reference this key.
The availability of these values depends on the location provider and platform. IndoorsLocationDataSource provides values for floor, floorLevelId, positionSource, and either transmitterCount or satelliteCount, depending on the underlying system data source. The location data source provides different values depending on the platform. For example, on iOS, it provides a value for floor and on Android, it provides values for positionSource and satelliteCount. Values reported via Android's Location.getExtras() are also included in the additional source properties dictionary.
For developers wanting to derive their own LocationDataSource, Location.additionalSourceProperties provides a means to include extra information with each Location.
Since
200.1.0