是否可以通过蓝牙或蓝牙低功耗在两个Android设备之间双向发送消息?您可以假设每台Android设备都运行相同的Android应用。如果是这样,请你分享一下这可能是怎么回事?谢谢!
答案 0 :(得分:1)
是的,这是可能的,但并不容易。首先,您需要阅读文档
稍后尝试找一些符合您需求的例子。
评论:我使用特殊硬件(我认为FTDI芯片)进行了通信安卓,但是使用了Xamarin .NET。有些事情是一样的。大部分时间都是这样,UI,创建通信和数据传输都在一个单独的线程中。在读取线程中,您有无限循环,其中从输入流读取字节并将其保存到临时缓冲区(阻止接收,您不会丢失字节)。稍后转移到MainBufferu并使用它们。
<强>更新强>
您必须阅读文档并探索示例。我无法在这里描述一切。我可以粗略地描述我处理自己的生命周期: 当您配对设备(获得BluetoothDevice )时,启动ConnectThread,打开RfcommSocket并尝试连接。如果没有问题,请启动ConnectedThread,从而无条件地从InputStream读取数据。在循环中您将数据放入临时缓冲区,并偶尔将数据移动到MainBuffer中,在那里将它们用于处理。如果您想通过蓝牙发送数据,您只需在ConnectedThread中写入OutputStream。