浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。
防作弊功能
下载开发文档
简介

百度iOS定位SDK支持定位防作弊功能,挖掘各类模拟定位方式对百度定位SDK内部信息的影响特征,综合多源数据分析,有效的识别模拟定位结果,为签到、运动、游戏等场景的位置真实性提供有力保障。

实现定位防作弊能力的方法如下:

1. 引入头文件

在调用定位功能的类中引入 BMKLocationComponent.h 这个头文件。

#import <BMKLocationkit/BMKLocationComponent.h>
2. 配置AK

在调用定位时,需要添加AK,需要注意的是请在 SDK 任何类的初始化以及方法调用之前设置正确的 AK。设置AK的方式如下:

[[BMKLocationAuth sharedInstance] checkPermisionWithKey:@"输入AK" authDelegate:self];
3. 初始化locationManager
self.locationManager = [BMKLocationManager new];
self.locationManager.delegate = self;
4. 单次定位

调用 BMKLocationManager 的 requestLocationWithReGeocode:withNetworkState:completionBlock: 方法,请求一次定位。

[self.locationManager requestLocationWithReGeocode:YES withNetworkState:YES completionBlock:^(BMKLocation * _Nullable location, BMKLocationNetworkState state, NSError * _Nullable error) {
if (error) {
NSLog(@"locError:{%ld - %@};", (long)error.code, error.localizedDescription);
}
NSString *result;
if (location.location) {
//得到定位信息,判断作弊概率
switch (location.mockProbability) {
case BMKMockLocationProbabilityNone:
result = @"当前定位信息作弊概率为0";
break;
case BMKMockLocationProbabilityLow:
result = @"当前定位信息作弊概率为低概率";
break;
case BMKMockLocationProbabilityMid:
result = @"当前定位信息作弊概率为中概率";
break;
case BMKMockLocationProbabilityHigh:
result = @"当前定位信息作弊概率为高概率";
break;
default:
break;
}
}
}];
5. 持续定位

调用BMKLocationManager提供的startUpdatingLocation方法实现。代码如下

[self.locationManager startUpdatingLocation];

实现BMKLocationManagerDelegate的方法

- (void)BMKLocationManager:(BMKLocationManager * _Nonnull)manager didUpdateLocation:(BMKLocation * _Nullable)location orError:(NSError * _Nullable)error {
if (error) {
NSLog(@"locError:{%ld - %@};", (long)error.code, error.localizedDescription);
}
NSString * result;
if (location) {
if (location.location) {
//得到定位信息,判断作弊概率
switch (location.mockProbability) {
case BMKMockLocationProbabilityNone:
result = @"当前定位信息作弊概率为0";
break;
case BMKMockLocationProbabilityLow:
result = @"当前定位信息作弊概率为低概率";
break;
case BMKMockLocationProbabilityMid:
result = @"当前定位信息作弊概率为中概率";
break;
case BMKMockLocationProbabilityHigh:
result = @"当前定位信息作弊概率为高概率";
break;
default:
break;
}
}
}
}

上一篇

坐标转换

下一篇

iOS 14 Beta适配说明

本篇文章对您是否有帮助?