// BluetoothLEDevice private void OnConnectionStatusChanged(BluetoothLEDevice device, object args) { // Utils.Info("OnConnectionStatusChanged: {0}", device.ConnectionStatus); lock (mLockObject) { if (device.ConnectionStatus == BluetoothConnectionStatus.Connected) { Utils.Info("connected"); return; } if ((mStatus != Status.Online) && (mStatus != Status.Disconnect)) { Utils.Error("invalid status: {0}", mStatus.ToString()); return; } CleanupConnection(); SetStatus(Status.Ready); Utils.Info("disconnected"); mCallback.OnDisconnect(); } }