Менеджер местоположения не контролирует маяки
Я не получаю события входа в регион и выхода из регионов маяка. Вот как я добавляю маяк в monitoredRegions:
NSUUID *uuid = [[NSUUID alloc] initWithUUIDString: beacon.UUID];
CLBeaconRegion *region = [[CLBeaconRegion alloc] initWithProximityUUID: uuid major: (CLBeaconMajorValue) beacon.major minor: (CLBeaconMajorValue) beacon.minor identifier: @"SOME IDENTIFIER"];
[_locationManager startMonitoringForRegion: region];
и события:
- (void) locationManager: (CLLocationManager *) manager didEnterRegion: (CLRegion *) region
{
NSLog(@"entered beacon region");
}
- (void) locationManager: (CLLocationManager *) manager didExitRegion: (CLRegion *) region
{
NSLog(@"exited beacon region");
}
Ни одно из этих событий делегата не предназначено для этой области маяка.
Я проверил это с географическими регионами, и это работает, но это просто не работает для моего маяка. Также я проверил ранжирование на этом самом маяке, который работает.
Есть ли известные проблемы с мониторингом маяка?
Большое спасибо
1 ответ
Привет @ldsarria Проверьте мои шаги, это работает для меня
Шаг 1: Установите delgate в файле.h CLLocationManagerDelegate
Шаг 2:
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.desiredAccuracy = kCLLocationAccuracyBest;
locationManager.distanceFilter = kCLDistanceFilterNone;
Шаг 3:
NSUUID *uuid = [[NSUUID alloc] initWithUUIDString:@"SOME IDENTIFIER"];
CLBeaconRegion *region = [[CLBeaconRegion alloc]
initWithProximityUUID:uuid identifier:@"com.test.abc"];
region.notifyEntryStateOnDisplay =YES;
[locationManager startMonitoringForRegion:region];
Шаг 4: Установите NSLocationAlwaysUsageDescription = "Это приложение нуждается в вашем местоположении, чтобы охотиться за сокровищами."
Ура!!!