Beispiel #1
0
        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);
        }
Beispiel #2
0
 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
        };
Beispiel #6
0
        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());