Я использую Рядом, чтобы обнаружить маяки.Вот мой код
- (void)viewDidLoad {
[super viewDidLoad];
[self setup];
[self startScanning];
}
-(void)setup {
[GNSMessageManager setDebugLoggingEnabled:YES];
void (^paramsBlock)(GNSMessageManagerParams *) = ^(GNSMessageManagerParams *params) {
params.bluetoothPermissionErrorHandler = ^(BOOL hasError) {
if (hasError) {
NSLog(@"Nearby works better if Bluetooth use is allowed");
}
};
params.bluetoothPowerErrorHandler = ^(BOOL hasError) {
if (hasError) {
NSLog(@"Nearby works better if Bluetooth is turned on");
}
};
};
_messageManager = [[GNSMessageManager alloc] initWithAPIKey:@"API-KEY" paramsBlock: paramsBlock];
}
- (void)startScanning {
// Create a subscription that scans for nearby beacons.
NSString *(^stringFromData)(NSData *) = ^(NSData *content) {
return [[NSString alloc] initWithData:content encoding:NSUTF8StringEncoding];
};
GNSBeaconStrategy *beaconScanStrategy =
[GNSBeaconStrategy strategyWithParamsBlock:^(GNSBeaconStrategyParams *params) {
params.includeIBeacons = NO;
}];
GNSMessageHandler messageFoundHandler = ^(GNSMessage *message) {
};
GNSMessageHandler messageLostHandler = ^(GNSMessage *message) {
};
_subscription = [_messageManager
subscriptionWithMessageFoundHandler:messageFoundHandler
messageLostHandler:messageLostHandler
paramsBlock:^(GNSSubscriptionParams *params) {
params.deviceTypesToDiscover = kGNSDeviceBLEBeacon;
params.beaconStrategy = beaconScanStrategy;
}];
}
Маяк обнаружен правильно, но через каждые 5 минут рядом вызывается метод messageLostHandler и что:
Обработчик потерянного сообщения вызывается, когда сообщения нетнаблюдается больше (устройство вышло за пределы диапазона или больше не публикует сообщение).
источник: https://developers.google.com/nearby/messages/ios/pub-sub
Может кто-нибудь сказать мне, почему этот метод вызывается каждые 5минут?Я должен сказать, что маяк и прибор находятся на одном месте, поэтому я все еще нахожусь в районе маяка.Функции Rest of Nearby работают нормально.
Это так важно для меня, потому что, когда Nearby обнаруживает маяк, я подключаюсь к нему и совершаю другие действия.У кого-нибудь есть идеи?