If you use CoreBluetooth to scan beacons instead of CoreLocation, you get one callback for each proposal detected against one callback every second for CoreLocation. There are advantages and disadvantages of both approaches, so it is important to understand exactly how each work makes the right choice. The advantages and disadvantages are highly dependent on the advertising speed of the beacon, while the standard advertising rate of iBeacon is 10 Hz.
Using CoreLocation Ranking
, BLE, iBeacon, ProximityUUID , CLBeaconRegion. , , :
locationManager(_ manager: CLLocationManager, didRangeBeacons beacons: [CLBeacon], in region: CLBeaconRegion).
CLBeacon beacons rssi. rssi , .
10 , rssi 8-10 , ( 80-90% - , ).
1 ( , ), rssi. ( , rssi, .)
, rssi , , , rssi . CoreLocation ββ , CoreBluetooth , .
CLBeacon accuracy proximity, rssi, ( , 20 ). API , 20 - , .
CoreBluetooth
, :
centralManager.scanForPeripherals(withServices: [], options: [CBCentralManagerScanOptionAllowDuplicatesKey: true] )
Bluetooth:
centralManager(_ central: CBCentralManager, didDiscover peripheral: CBPeripheral, advertisementData: [String : Any], rssi RSSI: NSNumber)
rssi - . 10 , 8-10 ( , 100% ), rssi, . rssi, .
iOS Beacon Tools, CoreBluetooth rssi, .
CoreBluetooth :
iBeacon , , . , AltBeacon, Eddystone.
, AltBeacon, , .
, Eddystone, , . rssi.