CLLocationManager.AllowDeferredLocationUpdatesUntil(Double, Double) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
建议将位置更新推迟到 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,并且 DesiredAccuracy 为 AccuracyBest 或 AccurracyBestForNavigation。