コード例 #1
0
        private void DisposeThreads()
        {
            if (connectThread != null)
            {
                connectThread.Cancel();
                connectThread = null;
            }

            if (connectedThread != null)
            {
                connectedThread.Cancel();
                connectedThread = null;
            }
        }
コード例 #2
0
        private void OnConnected(BluetoothSocket socket, BluetoothDevice device)
        {
            connectThread = null;

            DisposeThreads();

            connectedThread = new ConnectedThread(socket);

            connectedThread.OnDataReceived -= OnDataReceived;
            connectedThread.OnDataReceived += OnDataReceived;

            connectedThread.OnDataError -= OnDataError;
            connectedThread.OnDataError += OnDataError;

            connectedThread.Start();

            Notify(CreateNotification(GetString(Resource.String.message_connected)));
        }
コード例 #3
0
        private void Connect(BluetoothDevice device)
        {
            if (!IsRunning)
            {
                return;
            }

            DisposeThreads();

            BluetoothAdapter.DefaultAdapter.CancelDiscovery();

            connectThread = new ConnectThread(device);

            connectThread.OnConnected -= OnConnected;
            connectThread.OnConnected += OnConnected;

            connectThread.OnConnectionError -= OnConnectionError;
            connectThread.OnConnectionError += OnConnectionError;

            connectThread.Start();
        }