public BLEManager() { discoveredPeripherals = new List <BLEPeripheral> (); nativeManager = (BluetoothManager)Application.Context.GetSystemService("bluetooth"); state = BLEManagerState.Unknown; }
public BLEManager() { discoveredPeripherals = new List <BLEPeripheral> (); state = BLEManagerState.Unknown; nativeManager = new CBCentralManager(); nativeManager.UpdatedState += OnUpdatedState; nativeManager.DiscoveredPeripheral += OnDiscoveredPeripheral; nativeManager.ConnectedPeripheral += OnConnectedPeripheral; nativeManager.DisconnectedPeripheral += OnDisconnectedPeripheral; }
void OnUpdatedState(object sender, EventArgs e) { switch (nativeManager.State) { case CBCentralManagerState.PoweredOff: state = BLEManagerState.PoweredOff; break; case CBCentralManagerState.PoweredOn: state = BLEManagerState.PoweredOn; break; case CBCentralManagerState.Resetting: state = BLEManagerState.Resetting; break; case CBCentralManagerState.Unauthorized: state = BLEManagerState.Unauthorized; break; case CBCentralManagerState.Unsupported: state = BLEManagerState.Unsupported; break; default: state = BLEManagerState.Unknown; break; } EventHandler handler = UpdatedState; if (handler != null) { handler(this, EventArgs.Empty); } }