示例#1
0
        // 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();
            }
        }