CLLocationManager.AllowDeferredLocationUpdatesUntil(Double, Double) 方法

定义

建议将位置更新推迟到 distance 已传递或 timeout 已通过。

[Foundation.Export("allowDeferredLocationUpdatesUntilTraveled:timeout:")]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 6, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Unavailable(ObjCRuntime.PlatformName.WatchOS, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Unavailable(ObjCRuntime.PlatformName.TvOS, ObjCRuntime.PlatformArchitecture.All, null)]
public virtual void AllowDeferredLocationUpdatesUntil (double distance, double timeout);
abstract member AllowDeferredLocationUpdatesUntil : double * double -> unit
override this.AllowDeferredLocationUpdatesUntil : double * double -> unit

参数

distance
Double

距离(以米为单位),之后应传递位置更新。

timeout
Double

一个时间(以秒为单位),在此时间之后应传递位置更新。

属性

注解

应用程序开发人员必须在调用此方法之前实现 CLLocationManagerDelegate 并分配 Delegate 属性,否则他们将收到运行时异常。

如果应用程序在后台需要 GPS 准确位置信息,但不需要近实时信息的应用程序开发人员应使用此方法延迟交付。 延迟传递消耗的电量要小得多。

此方法只是一个请求。 即使应用程序处于延迟模式,也可能发生位置更新。 如果应用程序处于延迟模式时发生更新,则应用程序将保持延迟模式。

如果应用程序位于前台,则位置更新不会延迟。

此方法要求 GPS 硬件可用, DistanceFilter 必须是 P:CoreLocation.CLLocationDistance.None,并且 DesiredAccuracyAccuracyBestAccurracyBestForNavigation

适用于