Hello Apple Support Team,
As per the business requirement, we have to communicate and exchange data chunks between applications running on iPhones and Android-based or Android phones through Bluetooth interface. We have achieved the requirement through IP/Wifi communication.
We are trying to connect to Android and iPhone devices via Bluetooth through an iOS application. We carried out Bluetooth implementation using CoreBluetooth libraries. Below are the findings done by our development team:
Core Bluetooth Library
- Implementation
Importing Core Bluetooth Library in BTConnectionManager class, which uses CBCentralManagerDelegate, CBPeripheralDelegate, CBCentralManager, CBPeripheral as peripheral, [CBPeripheral] array as peripherals array. Using the below methods:
- centralManagerDidUpdateState,
- centralManager(_ central: CBCentralManager, didDiscover peripheral: CBPeripheral, advertisementData: [String : Any], rssi RSSI: NSNumber),
- centralManager(_ central: CBCentralManager, didConnect peripheral: CBPeripheral),
- peripheral(_ peripheral: CBPeripheral, didDiscoverServices error: Error?),
- peripheral(_ peripheral: CBPeripheral, didDiscoverCharacteristicsFor service: Service, error: Error?)
we are able to scan and connect to BLE devices
- Findings:
- We were able to get the list of low-energy devices like Airpods, Earphones and Bluetooth music devices. But Not able to scan Bluetooth high-energy devices like PAX / Android Phones
Please suggest to us the approach to make the Android running devices listed through the Core Bluetooth library.
Thanks & Regards