여기 내 코드입니다 (내 코드를 참조하십시오) :여러 개의 비콘 영역 모니터링이 작동하지 않고 있지만 개발자가 가능하다고 말했습니까? 생각?
// Initialize and monitor regions
for (NSString *serviceUUID in _serviceUUIDs) {
// Initialize region
NSUUID *uuid = [[NSUUID alloc] initWithUUIDString:serviceUUID];
CLBeaconRegion *appBeaconRegion = [[CLBeaconRegion alloc] initWithProximityUUID:uuid identifier:SERVICE_IDENTIFIER];
// Specify notifications
appBeaconRegion.notifyEntryStateOnDisplay = YES;
appBeaconRegion.notifyOnEntry = YES;
appBeaconRegion.notifyOnExit = YES;
// Add to regions
[_appBeaconRegions addObject:appBeaconRegion];
// Begin monitoring region and ranging beacons
[_locationManager startMonitoringForRegion:appBeaconRegion];
[_locationManager startRangingBeaconsInRegion:appBeaconRegion];
}
가 명확히하기 위해, "_serviceUUIDs을" 다섯 UUID를 포함하는 NSStrings의 NSArray를합니다. 나는 테스트를 위해 Locate iBeacons를 사용하고 추가 된 마지막 영역 만 탐지된다는 것을 발견했습니다. 그것은 또한 모니터링되는 유일한 것으로 보입니다. 나는 "_locationManager.monitoredRegions"을 검사하여 이것을 결정했다.
여러 개의 비콘 영역을 모니터링 할 수 있다는 것을 나타내는 여러 스레드가 있습니다. 어떤 사람이 나를 위해 일하지 않는 이유에 대한 생각을 가지고 있습니까? 감사!
내가 한 것은 문자열로 UUID, 메이저 및 마이너 값 (문자열)을 연결하고 그 사이의 쉼표 문자열로 식별자로 사용하는 것입니다. 간단하고 안정적으로 고유합니다. 메이저 또는 메이저/마이너가있는 영역을 만들지 않으면 식별자에서 제외하십시오. –
감사합니다! 그것은 작동합니다! –