跳转到内容

WDGLocation

WilddogLocation的主入口,使用WDGLocation实例进行位置同步、范围监听、轨迹查询。

@property (nonatomic, strong, readonly) WDGSyncReference *syncReference;

WDGSyncReference实例,WDGLocation的数据读写将在这个实例所表示的路径下进行。


@property (nonatomic, weak, nullable) id<WDGLocationDelegate> delegate;

遵守WDGLocationDelegate协议的代理。


- (instancetype)initWithSyncReference:(WDGSyncReference *)syncReference;

通过一个WDGSyncReference实例进行初始化。WDGLocation实例。

参数名 说明
syncReference 一个WDGSyncReference实例,后续的数据读写都在这个实例所在的路径下进行。

初始化成功的WDGLocation实例。


- (void)startTracingPositionForKey:(NSString *)key;

开启自动位置同步,SDK 自动将 locationProvider 提供的位置数据上传到 key 名下,使用默认的LocationProvider,采样间隔为5s。

参数名 说明
key 位置数据将上传到这个 key 名下。

- startTracingPositionForKey:withCompletionBlock:

Section titled “- startTracingPositionForKey:withCompletionBlock:”
- (void)startTracingPositionForKey:(NSString *)key withCompletionBlock:(WDGLocationCompletionBlock _Nullable)block;

开启自动位置同步,SDK 自动将 locationProvider 提供的位置数据上传到 key 名下,使用默认的LocationProvider,采样间隔为5s。

参数名 说明
key 位置数据将上传到这个 key 名下。
block 完成后执行的回调。

- startTracingPositionForKey:withLocationProvider:

Section titled “- startTracingPositionForKey:withLocationProvider:”
- (void)startTracingPositionForKey:(NSString *)key withLocationProvider:(WDGAMapLocationProvider *)locationProvider;

开启自动位置同步,SDK 自动将 locationProvider 提供的位置数据上传到 key 名下。

参数名 说明
key 位置数据将上传到这个 key 名下。
locationProvider WDGLocationProvider实例,位置数据的提供者
block 完成后执行的回调。

- startTracingPositionForKey:withLocationProvider:withCompletionBlock:

Section titled “- startTracingPositionForKey:withLocationProvider:withCompletionBlock:”
- (void)startTracingPositionForKey:(NSString *)key withLocationProvider:(WDGAMapLocationProvider *)locationProvider withCompletionBlock:(WDGLocationCompletionBlock _Nullable)block;

开启自动位置同步,SDK 自动将 locationProvider 提供的位置数据上传到 key 名下。

参数名 说明
key 位置数据将上传到这个 key 名下。
locationProvider WDGLocationProvider实例,位置数据的提供者

- (void)stopTracingPositionForKey:(NSString *)key;

终止针对 key 的自动位置同步。

参数名 说明
key 要终止自动位置同步的 key。

- stopTracingPositionForKey:withCompletionBlock:

Section titled “- stopTracingPositionForKey:withCompletionBlock:”
- (void)stopTracingPositionForKey:(NSString *)key withCompletionBlock:(WDGLocationCompletionBlock _Nullable)block;

终止针对 key 的自动位置同步。

参数名 说明
key 要终止自动位置同步的 key。
block 完成后执行的回调。

- (void)setPosition:(WDGPosition *)position forKey:(NSString *)key;

手动将位置数据写入。

参数名 说明
position 要写入的位置数据。
key 位置数据将写入 key 名下。

- (void)setPosition:(WDGPosition *)position forKey:(NSString *)key withCompletionBlock:(WDGLocationCompletionBlock _Nullable)block;

手动将位置数据写入。

参数名 说明
position 要写入的位置数据。
key 位置数据将写入 key 名下。
block 写入操作的回调函数。

- (void)getPositionForKey:(NSString *)key withBlock:(WDGLocationCallbackBlock)block;

获取某个 key 最新位置。

参数名 说明
key 要获取其位置的 key。
block 包含位置信息或错误信息的回调函数。

- (WilddogHandle)observePositionForKey:(NSString *)key withBlock:(WDGLocationCallbackBlock)block;

持续监听指定 key 的位置。

参数名 说明
key 要获取其位置的 key。
block 包含位置信息或错误信息的回调函数。

代表当前监听的编号,可用于稍后取消监听。


- (void)removeObserverWithHandle:(WilddogHandle)handle;

取消指定的位置监听。

参数名 说明
handle 要取消的监听的编号。

- (void)removeAllObserversForKey:(NSString *)key;

取消对指定key的位置监听。

参数名 说明
key 要取消监听的key。

- (void)removeAllObservers;

取消所有位置监听。


- (void)removePositionForKey:(NSString *)key;

移除指定key下的位置数据。

参数名 说明
key 需要移除的节点。

- removePositionForKey:withCompletionBlock:

Section titled “- removePositionForKey:withCompletionBlock:”
- (void)removePositionForKey:(NSString *)key withCompletionBlock:(WDGLocationCompletionBlock _Nullable)block;

移除指定key下的位置数据。

参数名 说明
key 需要移除的节点。
block 删除操作的回调函数。

- (void)startRecordingPathForKey:(NSString *)key;

开始记录 key 的轨迹。开启成功后每次 key 的位置同步数据更新时,都将存一份副本到实时轨迹数据库中。使用默认的LocationProvider,采样间隔为5s。

参数名 说明
key 要记录轨迹的 key。

- startRecordingPathForKey:withCompletionBlock

Section titled “- startRecordingPathForKey:withCompletionBlock”
- (void)startRecordingPathForKey:(NSString *)key withCompletionBlock:(WDGLocationCompletionBlock _Nullable)block;

开始记录 key 的轨迹。开启成功后每次 key 的位置同步数据更新时,都将存一份副本到实时轨迹数据库中。使用默认的LocationProvider,采样间隔为5s。

参数名 说明
key 要记录轨迹的 key。
block 完成后执行的回调。

- startRecordingPathForKey:withLocationProvider:

Section titled “- startRecordingPathForKey:withLocationProvider:”
- (void)startRecordingPathForKey:(NSString *)key withLocationProvider:(WDGLocationProvider *)locationProvider;

开始记录 key 的轨迹。开启成功后每次 key 的位置同步数据更新时,都将存一份副本到实时轨迹数据库中。

参数名 说明
key 要记录轨迹的 key。
locationProvider WDGLocationProvider实例,位置数据的提供者

- startRecordingPathForKey:withLocationProvider:withCompletionBlock:

Section titled “- startRecordingPathForKey:withLocationProvider:withCompletionBlock:”
- (void)startRecordingPathForKey:(NSString *)key withLocationProvider:(WDGAMapLocationProvider *)locationProvider withCompletionBlock:(WDGLocationCompletionBlock _Nullable)block;

开始记录 key 的轨迹。开启成功后每次 key 的位置同步数据更新时,都将存一份副本到实时轨迹数据库中。

参数名 说明
key 要记录轨迹的 key。
locationProvider WDGLocationProvider实例,位置数据的提供者
block 完成后执行的回调。

- (void)stopRecordingPathForKey:(NSString *)key;

终止 key 的轨迹记录。

参数名 说明
key 要终止记录轨迹的 key。

- stopRecordingPathForKey:withCompletionBlock:

Section titled “- stopRecordingPathForKey:withCompletionBlock:”
- (void)stopRecordingPathForKey:(NSString *)key withCompletionBlock:(WDGLocationCompletionBlock _Nullable)block;

终止 key 的轨迹记录。

参数名 说明
key 要终止记录轨迹的 key。
block 完成后执行的回调。

- (WDGPathQuery *)pathQueryForKey:(NSString *)key startTime:(NSDate *)startTime endTime:(NSDate *_Nullable)endTime;

初始化一个用于实时轨迹查询的 WDGPathQuery 实例。

参数名 说明
key 要查询的 key。
startTime 要查询的时间段的开始时间。
endTime 要查询的时间段的结束时间。

WDGPathQuery 实例。


- (WDGPathQuery *)pathQueryForKey:(NSString *)key;

初始化一个用于实时轨迹查询的 WDGPathQuery 实例,不需要开始、结束时间,查询一个key的全部记录。

参数名 说明
key 要查询的 key。

WDGPathQuery 实例。


- (WDGPathQuery *)pathQueryForKey:(NSString *)key startTime:(NSDate *)startTime;

初始化一个用于实时轨迹查询的 WDGPathQuery 实例。不设置结束时间,如果选择持续监听,将持续更新。

参数名 说明
key 要查询的 key。
startTime 要查询的时间段的开始时间。

WDGPathQuery 实例。


- (WDGPathQuery *)pathQueryForKey:(NSString *)key startTime:(NSDate *)startTime endTime:(NSDate *_Nullable)endTime;

初始化一个用于实时轨迹查询的 WDGPathQuery 实例。默认从最早的轨迹记录开始查询。

参数名 说明
key 要查询的 key。
endTime 要查询的时间段的结束时间。

WDGPathQuery 实例。


- (void)removePathForKey:(NSString *)key;

移除指定key下的轨迹记录。

参数名 说明
key 需要移除的节点。

- (void)removePathForKey:(NSString *)key withCompletionBlock:(WDGLocationCompletionBlock _Nullable)block;

移除指定key下的轨迹记录。

参数名 说明
key 需要移除的节点。
block 删除操作的回调函数。

- (WDGCircleQuery *)circleQueryAtPosition:(WDGPosition *)position withRadius:(double)radius;

初始化一个用于范围查询的 WDGCircleQuery 实例。

参数名 说明
position 范围查询的圆心。
radius 范围查询的半径。

WDGCircleQuery 实例。


+ (double)distanceBetweenPosition:(WDGPosition *)position1 andPosition:(WDGPosition *)position2;

用于计算两个位置点的距离的辅助函数。

参数名 说明
position1 第一个位置点。
position2 第二个位置点。

以米为单位的距离。