private async Task <bool> OldScanAsync(Action <BrickController2.PlatformServices.BluetoothLE.ScanResult> scanCallback, CancellationToken token) { try { var leScanner = new BluetoothLEOldScanner(scanCallback); #pragma warning disable CS0618 // Type or member is obsolete if (!_bluetoothAdapter.StartLeScan(leScanner)) #pragma warning restore CS0618 // Type or member is obsolete { return(false); } var tcs = new TaskCompletionSource <bool>(TaskCreationOptions.RunContinuationsAsynchronously); using (token.Register(() => { #pragma warning disable CS0618 // Type or member is obsolete _bluetoothAdapter.StopLeScan(leScanner); #pragma warning restore CS0618 // Type or member is obsolete tcs.TrySetResult(true); })) { return(await tcs.Task); } } catch (Exception) { return(false); } }
private async Task <bool> OldScanAsync(Action <BrickController2.PlatformServices.BluetoothLE.ScanResult> scanCallback, CancellationToken token) { try { var leScanner = new BluetoothLEOldScanner(scanCallback); if (!_bluetoothAdapter.StartLeScan(leScanner)) { return(false); } var tcs = new TaskCompletionSource <bool>(TaskCreationOptions.RunContinuationsAsynchronously); token.Register(() => { _bluetoothAdapter.StopLeScan(leScanner); tcs.SetResult(true); }); return(await tcs.Task); } catch (Exception) { return(false); } }