// // BMKRadarManager.h // RadarComponent // // Created by wzy on 15/4/22. // Copyright (c) 2015年 baidu. All rights reserved. // #ifndef RadarComponent_BMKRadarManager_h #define RadarComponent_BMKRadarManager_h #import "BMKRadarOption.h" #import "BMKRadarResult.h" ///雷达delegate @protocol BMKRadarManagerDelegate @optional /* *开启自动上传,需实现该回调 */ - (BMKRadarUploadInfo*)getRadarAutoUploadInfo; /** *返回雷达 上传结果 *@param error 错误号,@see BMKRadarErrorCode */ - (void)onGetRadarUploadResult:(BMKRadarErrorCode) error; /** *返回雷达 清除我的信息结果 *@param error 错误号,@see BMKRadarErrorCode */ - (void)onGetRadarClearMyInfoResult:(BMKRadarErrorCode) error; /** *返回雷达 查询周边的用户信息结果 *@param result 结果,类型为@see BMKRadarNearbyResult *@param error 错误号,@see BMKRadarErrorCode */ - (void)onGetRadarNearbySearchResult:(BMKRadarNearbyResult*) result error:(BMKRadarErrorCode) error; @end ///周边雷达管理类 @interface BMKRadarManager : NSObject /// 上传时用,上传前需设置,不设置自动生成userId;切换用户时,需手动清除原先用户的位置信息 @property (nonatomic, strong) NSString* userId; /** *获取周边雷达实例,使用引用计数管理该实例内存 */ + (BMKRadarManager*)getRadarManagerInstance; /** *release周边雷达实例,使用引用计数管理该实例内存 */ + (void)releaseRadarManagerInstance; /** *添加周边雷达delegate,用于结果回调 *不需要时,需要使用removeRadarManagerDelegate:移除,否则影响内存释放 *@param delegate, 添加的id对象 */ - (void)addRadarManagerDelegate:(id) delegate; /** *移除周边雷达delegate,取消结果回调 *@param delegate, 需要移除的id对象 */ - (void)removeRadarManagerDelegate:(id) delegate; /** *启动自动上传用户位置信息 *必须实现回调方法@see getRadarAutoUploadInfo,获取@see BMKRadarUploadInfo *@param interval 时间间隔,不小于5s(小于强制设为5s) */ - (void)startAutoUpload:(NSTimeInterval) interval; /** *停止自动上传用户位置信息 */ - (void)stopAutoUpload; /** *单次上传用户位置信息 *上传时间间隔不小于5s,否则return NO *返回结果回调:@see onGetRadarUploadResult: *@param info 位置信息 */ - (BOOL)uploadInfoRequest:(BMKRadarUploadInfo*) info; /** *清除我的位置信息 *返回结果回调:@see onGetRadarClearMyInfoResult: */ - (BOOL)clearMyInfoRequest; /** *查询周边的用户信息 *返回结果回调:@see onGetRadarNearbySearchResult:error: *@param option 查询参数: 类型为@see BMKRadarNearbySearchOption */ - (BOOL)getRadarNearbySearchRequest:(BMKRadarNearbySearchOption*) option; @end #endif