Is there a way to get list of mac addresses of available bluetooth devices in ios? I'm working on a programm which finds people nearby using bluetooth mac addresses.
I'm sure you have:
[centralManager scanForPeripheralsWithServices:nil
options:nil];
That means your app is searching for BLE peripherals.
Every time your app discovers a peripheral invokes:
- (void)centralManager:(CBCentralManager *)central
didDiscoverPeripheral:(CBPeripheral *)peripheral
advertisementData:(NSDictionary *)advertisementData
RSSI:(NSNumber *)RSSI
You can add each discovered peripheral to an NSArray
of CBPeripheral
It is generally not possible, as iOS does not expose the Bluetooth address to the app.
If you are using non-iOS Bluetooth peripherals, you can manually include the BD_ADDR into the Manufacturer Info field of the advertising data. iOS exposes this manufacturer info, and you can get the BD_ADDR from there.
For many use cases, the UUID that iOS generates for each device is sufficient. If you could provide more details (possibly in a follow-up question), there may be a good chance that a solution can be found that does not need this workaround.
© 2022 - 2024 — McMap. All rights reserved.