private async void BtDevicesListView_ItemTapped(object sender, ItemTappedEventArgs e) { var controller = (BindingContext as SelectBluetoothPageController); if (controller == null) { return; } // Get selected name MyBluetoothDevice device = (e.Item as MyBluetoothDevice); if (device == null) { return; } // Connect to Bluetooth bool tryAgain = true; while (tryAgain) { if (!await controller.ConnectToBluetoothDevice(device.Name, 30)) { string answer = await DisplayActionSheet("Couldn't connect to " + device.Name + "! Try again?", "Cancel", null, "Yes", "No"); if (answer == "Yes") { tryAgain = true; } else if (answer == "No") { tryAgain = false; } else { return; } } else { App.Current.Properties["DeviceName"] = device.Name; await App.Current.SavePropertiesAsync(); tryAgain = false; } } await GoToPage(); }
public List <MyBluetoothDevice> GetPairedDevices() { BluetoothAdapter adapter = BluetoothAdapter.DefaultAdapter; checkDefaultAdapter(adapter); List <MyBluetoothDevice> devices = new List <MyBluetoothDevice>(); foreach (var item in adapter.BondedDevices) { MyBluetoothDevice device = new MyBluetoothDevice(); device.Name = item.Name; device.Address = item.Address; } return(devices); }