internal static Position ToPosition(this Android.Locations.Location location) { var p = new Position(); if (location.HasAccuracy) { p.Accuracy = location.Accuracy; } if (location.HasAltitude) { p.Altitude = location.Altitude; } if (location.HasBearing) { p.Heading = location.Bearing; } if (location.HasSpeed) { p.Speed = location.Speed; } p.Longitude = location.Longitude; p.Latitude = location.Latitude; p.Timestamp = location.GetTimestamp(); return(p); }
internal static Location ToLocation(this AndroidLocation location) => new Location { Latitude = location.Latitude, Longitude = location.Longitude, TimestampUtc = location.GetTimestamp().ToUniversalTime(), Accuracy = location.HasAccuracy ? location.Accuracy : (float?)null };
internal static Location ToLocation(this AndroidLocation location) => new Location { Latitude = location.Latitude, Longitude = location.Longitude, Altitude = location.HasAltitude ? location.Altitude : default(double?), TimestampUtc = location.GetTimestamp().ToUniversalTime(), Accuracy = location.HasAccuracy ? location.Accuracy : default(float?), Course = location.HasBearing ? location.Bearing : default(double?), Speed = location.HasSpeed ? location.Speed : default(double?) };
internal static Location ToLocation(this AndroidLocation location) => new Location { Latitude = location.Latitude, Longitude = location.Longitude, Altitude = location.HasAltitude ? location.Altitude : default(double?), Timestamp = location.GetTimestamp().ToUniversalTime(), Accuracy = location.HasAccuracy ? location.Accuracy : default(float?), Course = location.HasBearing ? location.Bearing : default(double?), Speed = location.HasSpeed ? location.Speed : default(double?), IsFromMockProvider = Platform.HasApiLevel(global::Android.OS.BuildVersionCodes.JellyBeanMr2) ? location.IsFromMockProvider : false };
internal static Location ToLocation(this AndroidLocation location) => new Location { Latitude = location.Latitude, Longitude = location.Longitude, Altitude = location.HasAltitude ? location.Altitude : default(double?), Timestamp = location.GetTimestamp().ToUniversalTime(), Accuracy = location.HasAccuracy ? location.Accuracy : default(float?), VerticalAccuracy = Platform.HasApiLevelO && location.HasVerticalAccuracy ? location.VerticalAccuracyMeters : default(float?), Course = location.HasBearing ? location.Bearing : default(double?), Speed = location.HasSpeed ? location.Speed : default(double?), IsFromMockProvider = Platform.HasApiLevelS ? location.Mock : #pragma warning disable CS0618 // Type or member is obsolete location.IsFromMockProvider, #pragma warning restore CS0618 // Type or member is obsolete AltitudeReferenceSystem = AltitudeReferenceSystem.Ellipsoid };
internal static Location ToLocation(this AndroidLocation location) => new Location { Latitude = location.Latitude, Longitude = location.Longitude, Altitude = location.HasAltitude ? location.Altitude : default(double?), Timestamp = location.GetTimestamp().ToUniversalTime(), Accuracy = location.HasAccuracy ? location.Accuracy : default(float?), VerticalAccuracy = OperatingSystem.IsAndroidVersionAtLeast(26) && location.HasVerticalAccuracy ? location.VerticalAccuracyMeters : null, ReducedAccuracy = false, Course = location.HasBearing ? location.Bearing : default(double?), Speed = location.HasSpeed ? location.Speed : default(double?), IsFromMockProvider = OperatingSystem.IsAndroidVersionAtLeast(31) ? location.Mock #pragma warning disable CS0618 // Type or member is obsolete : location.IsFromMockProvider, #pragma warning restore CS0618 // Type or member is obsolete AltitudeReferenceSystem = AltitudeReferenceSystem.Ellipsoid };
internal static Location ToLocation(this Android.Locations.Location location) => new Location(location.Latitude, location.Longitude, location.GetTimestamp().ToUniversalTime());