diff --git a/internal/platform/implementation/apple/ble_gatt_client.mm b/internal/platform/implementation/apple/ble_gatt_client.mm index a5dc5055..52b49e6a 100644 --- a/internal/platform/implementation/apple/ble_gatt_client.mm +++ b/internal/platform/implementation/apple/ble_gatt_client.mm @@ -128,7 +128,10 @@ bool GattClient::SetCharacteristicSubscription( } void GattClient::Disconnect() { - [gatt_client_ disconnect]; + // There seems to be an issue between some iOS<>Android device pairs where the Android device will + // not connect to the iOS device if the iOS device disconnects and then attempts to reconnect. + // Because of this, we no-op here instead of calling `[gatt_client_ disconnect]`. + // See: b/375176623 } } // namespace apple diff --git a/internal/platform/implementation/apple/ble_medium.mm b/internal/platform/implementation/apple/ble_medium.mm index f7bb3b0a..8f8be746 100644 --- a/internal/platform/implementation/apple/ble_medium.mm +++ b/internal/platform/implementation/apple/ble_medium.mm @@ -119,8 +119,6 @@ bool BleMedium::StopAdvertising() { void BleMedium::HandleAdvertisementFound(id peripheral, NSDictionary *serviceData) { absl::MutexLock lock(&peripherals_mutex_); - [socketCentralManager_ retrievePeripheralWithIdentifier:peripheral.identifier - advertisementData:@{}]; api::ble_v2::BleAdvertisementData data; for (CBUUID *key in serviceData.allKeys) {