我正在编写一个需要将蓝牙包发送到MagicBlue LED的.NET应用程序。换句话说,我想创建一个类似于Android的.NET应用程序:https://itunes.apple.com/us/app/led-magic-blue/id992330218?mt=8
以下是演示:https://www.youtube.com/watch?v=5Q3aQjuiLY0
我的蓝牙适配器找到了灯泡并连接到它,所以它是可发现的,我也有它的MAC地址,这是我的需要。
我正在使用InTheHand (32Feet Bluetooth) .NET Library
进行交流。
灯泡需要接收一个字节数组,以便执行命令(改变颜色,打开/关闭电源等)。
// I use this Write function to send an array of bytes.
private bool Write(byte[] buffer)
{
using (var bluetoothClient = new BluetoothClient())
{
try
{
var ep = new BluetoothEndPoint(_macAddress, Guid.NewGuid());
bluetoothClient.Connect(ep);
var bluetoothStream = bluetoothClient.GetStream();
if (bluetoothStream != null)
{
bluetoothStream.Write(buffer, 0, buffer.Length);
bluetoothStream.Flush();
bluetoothStream.Close();
return true;
}
}
catch (Exception ex) { }
}
}
当我到达bluetoothClient.Connect(ep);
时,它会抛出一个例外"the connected party did not properly responded after a period of time..."
。
如何解决这个问题灯泡的字节数组?
答案 0 :(得分:0)
更改为:
var ep = new BluetoothEndPoint(_macAddress, BluetoothService.HandsFree);
它将正常工作!