mirror of
https://github.com/kidfromjupiter/nearby.git
synced 2026-09-14 14:46:12 -04:00
Skip SDP check for FP rfcomm connection on Windows
The SDP checks fails but rfcomm connection works. Skipping the SDP check does not seem to have any ill side effects. PiperOrigin-RevId: 551370531
This commit is contained in:
committed by
Copybara-Service
parent
f3bbb8caeb
commit
974d4b357c
@@ -43,6 +43,7 @@ namespace {
|
||||
constexpr char kFastPairPreferencesFilePath[] = "Google/Nearby/FastPair";
|
||||
constexpr FeatureFlags::Flags fast_pair_feature_flags = FeatureFlags::Flags{
|
||||
.enable_scan_for_fast_pair_advertisement = true,
|
||||
.skip_service_discovery_before_connecting_to_rfcomm = true,
|
||||
};
|
||||
constexpr absl::Duration kTimeout = absl::Seconds(3);
|
||||
} // namespace
|
||||
|
||||
@@ -56,6 +56,10 @@ class FeatureFlags {
|
||||
// Controls enable or disable BLE scan advertisement for fast pair
|
||||
// service uuid 0x2cfe
|
||||
bool enable_scan_for_fast_pair_advertisement = false;
|
||||
// Skip Service Discovery Protocol check if the remote party supports the
|
||||
// requested service id before attempting to connect over rfcomm. SDP fails
|
||||
// on Windows when connecting to FP service id but the rfcomm is successful.
|
||||
bool skip_service_discovery_before_connecting_to_rfcomm = false;
|
||||
};
|
||||
|
||||
static const FeatureFlags& GetInstance() {
|
||||
|
||||
@@ -311,7 +311,10 @@ std::unique_ptr<api::BluetoothSocket> BluetoothClassicMedium::ConnectToService(
|
||||
RfcommDeviceService requested_service(
|
||||
GetRequestedService(current_device, service));
|
||||
|
||||
if (!CheckSdp(requested_service)) {
|
||||
if (!FeatureFlags::GetInstance()
|
||||
.GetFlags()
|
||||
.skip_service_discovery_before_connecting_to_rfcomm &&
|
||||
!CheckSdp(requested_service)) {
|
||||
NEARBY_LOGS(ERROR) << __func__ << ": Invalid SDP.";
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user