Я использую комплект разработчика Nordic BLE nRF8001 для тестирования CoreBluetooth. Использование методов CBCentralManager (например, didDiscoverPeripheral(), didConnectPeripheral() и т. Д.) мой iPhone 5 способен обнаруживать рекламные объявления Nordic и подключаться к нему просто отлично. Тем не менее, я не получаю никакого ответа от новых методов locationManager или regionMonitoring. Ниже я объясню свою настройку:locationManager: метод didRangeBeacons не обнаруживает устройство BLE
1.) Сначала я получил свой NSUUID от моего устройства Nordic в методе делегирования didDiscoverPeripheral() с использованием переданного в периферийном устройстве (моего северного устройства). Между прочим, я создал специальный сервис для моего скандинавского устройства, поэтому предположим, что это периферийное устройство является скандинавским устройством. Чтобы получить NSUUID я использовал:
NSUUID *uuid = [peripheral identifier];
NSString *uuidString = [uuid UUIDString]; //uuidString = 9A8D4C73-152D-BBDA-E4C2-9CE952654645
2.) Далее я создаю область радиомаяка для моего скандинавского устройства и создать CLLocationManager:
self.locationManagerBeacon = [[CLLocationManager alloc] init];
[self.locationManagerBeacon setDelegate:self];
NSUUID *myUUID = [[NSUUID alloc] initWithUUIDString:@"9A8D4C73-152D-BBDA-E4C2-9CE952654645"];
self.beaconRegion = [[CLBeaconRegion alloc] initWithProximityUUID:myUUID
identifier:@"nordicRegion"];
self.beaconRegion.notifyEntryStateOnDisplay = YES;
3.) Теперь я начало мониторинга для региона радиомаяка
[self.locationManagerBeacon startRangingBeaconsInRegion:self.beaconRegion];
4.) Проблема: locationManager: didRangeBeacons: inRegion получает вызывался, а область маяков всегда пусто.
Вопрос: Должно ли быть настроено устройство Nordic BLE определенным образом, чтобы новые методы маяка locationManager обнаружали его (например, частота рекламы BLE, уровень мощности и т. Д.)? Если да, может кто-нибудь указать мне на документацию.
Цените помощь!
Итак, глупый вопрос: вы используете фактический iBeacon? Или просто произвольное устройство BTLE? Только BTLE-устройство, передающее профиль iBeacon, действительно будет рассматриваться как «iBeacon». –
Интересно, можете ли вы поделиться своим кодом конфигурации/профиля/образца для настройки рекламы nrf8001 в качестве iBeacon. – joshperry