1

Bluetooth 接続による StreamSocket に問題があります。

私は電話 Nokia Lumia 920 といくつかの Bluetooth ヘッドセットを持っています。このヘッドセットには独自のサービスがあります。このサービスのuuidを知っています。

このサービスと通信するためのコードを実装しました。

PeerFinder.AlternateIdentities["Bluetooth:ペアリング"] = ""; var peers = await PeerFinder.FindAllPeersAsync(); StreamSocket ソケット = 新しい StreamSocket(); var uuid = "uuid あり"; await 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(a); await dataWriter.StoreAsync();

このコードは成功しました。

次に、バイトメッセージを取得する必要があります。

DataReader dataReader = new DataReader(socket.InputStream); dataReader.InputStreamOptions = InputStreamOptions.Partial; await dataReader.LoadAsync(10); while (dataReader.UnconsumedBufferLength > 0) { バイト bb = dataReader.ReadByte(); }

このコードは成功しません。

ラインで

await dataReader.LoadAsync(10); アプリはここでハングします。しかし、応答は必然的にそうでなければなりません。

なぜこれが問題なのですか?

ソケットは、Windows Phone 8 で uuid による Bluetooth 経由の通信をサポートしていますか?

手伝って頂けますか?

皆さん、ありがとうございました。

4

0 に答える 0