additionalSourceProperties property

Map<String, dynamic> additionalSourceProperties

A set of key-value pairs providing additional meta-data and properties about the source of this ArcGISLocation.

An ArcGISLocation object can be created manually or by a variety of LocationDataSource types, for example from the default platform data source or external GPS. When user code receives a new ArcGISLocation, it can be important to determine how the information was obtained.

In addition, mobile devices may provide different details about their in-built location services. For example, Android systems can provide data on the number of satellites used to find a position, whereas on iOS this information is not available. When a given property is not available to the data source the entry should be omitted from the ArcGISLocation.additionalSourceProperties.

The ArcGISLocation.additionalSourceProperties provide a means for the creator of an ArcGISLocation object to record flexible information such as:

  • The confidence level associated with the location
  • The method used to obtain the location
  • The provenance of the location

Information is provided as a set of key-value pairs, where the String key describes the type of data held in the dynamic value. Values must be basic data types such as string, numeric, boolean or date. The creator of the ArcGISLocation can use any string for the key - but this API recognizes a number of well known keys which should be used if available. See LocationSourcePropertiesKeys:

  • "floor" (an integer value). The floor number of the ArcGISLocation when in a building. Use LocationSourcePropertiesKeys.floor to reference this key.
  • "satelliteCount" (an integer value). The number of satellites used to fix the ArcGISLocation. Use LocationSourcePropertiesKeys.satelliteCount to reference this key.
  • "positionSource" (a string value). This key can be used to indicate the position source: GNSS, AppleIPS, BLE, WIFI, CELL, IP. GNSS indicates global navigation satellite system and AppleIPS is Appleā€™s indoor positioning technology. It is possible to have multiple position sources. In that case positionSource is a list with comma-separated values.

Keys are case-sensitive.

Implementation

Map<String, dynamic> get additionalSourceProperties =>
    _additionalSourceProperties.value;