JSONtoPosition static method
Position
JSONtoPosition(
- dynamic positionSnapshot
Implementation
static Position JSONtoPosition(positionSnapshot){
Position position = Position(
longitude: 0, latitude: 0,
timestamp: DateTime.now(),
accuracy: 0, altitude: 0,
heading: 0, speed: 0, speedAccuracy: 0,
altitudeAccuracy: 1, headingAccuracy: 1
);
try {
if(positionSnapshot != null && positionSnapshot != "null") {
dynamic positionJSON = jsonDecode(positionSnapshot);
double longitude = double.tryParse(positionJSON['longitude'].toString()) ?? 0;
double latitude = double.tryParse(positionJSON['latitude'].toString()) ?? 0;
DateTime timestamp = DateTime.now();
double accuracy = double.tryParse(positionJSON['accuracy'].toString()) ?? 0;
double altitude = double.tryParse(positionJSON['altitude'].toString()) ?? 0;
double heading = double.tryParse(positionJSON['heading'].toString()) ?? 0;
double speed = double.tryParse(positionJSON['speed'].toString()) ?? 0;
double speedAccuracy = double.tryParse(positionJSON['speed_accuracy'].toString()) ?? 0;
bool isMocked = positionJSON['is_mocked'];
position = Position(longitude: longitude,
latitude: latitude,
timestamp: timestamp,
accuracy: accuracy,
altitude: altitude,
heading: heading,
speed: speed,
speedAccuracy: speedAccuracy,
isMocked: isMocked,
altitudeAccuracy: 1,
headingAccuracy: 1
);
}
} catch (e) {
AppConfig.logger.e(e.toString());
}
return position;
}