我通过蓝牙连接遇到了StreamSocket的问题。
我有一部手机诺基亚Lumia 920和一些蓝牙耳机。这款耳机具有专有服务。我知道这项服务的用途。
我实现了与此服务进行通信的代码。
PeerFinder.AlternateIdentities [“蓝牙:已配对”] =“”; var peers = await PeerFinder.FindAllPeersAsync(); StreamSocket socket = new StreamSocket(); var uuid =“有uuid”; 等待socket.ConnectAsync(peers [0] .HostName,uuid,SocketProtectionLevel.PlainSocket);
此代码工作成功。
然后我通过IOutputStream将字节消息发送到耳机。
DataWriter dataWriter = new DataWriter(socket.OutputStream); byte [] a = {0x01,0x01,0x10,0x07,0x00,0x00,0x00,0x01,0x01,0x01,0x01}; dataWriter.WriteBytes(一); 等待dataWriter.StoreAsync();
此代码工作成功。
然后我必须得到字节消息。
DataReader dataReader = new DataReader(socket.InputStream); dataReader.InputStreamOptions = InputStreamOptions.Partial; 等待dataReader.LoadAsync(10); while(dataReader.UnconsumedBufferLength> 0) { byte bb = dataReader.ReadByte(); }
此代码无效。
在第
行await dataReader.LoadAsync(10); 应用挂在这里。但必须回应。
为什么这是一个问题?
套接字是否支持Windows Phone 8中uuid通过蓝牙进行通信?
你能帮助我吗?
谢谢大家。