2011-02-09 35 views
0

我可以通过蓝牙将Nexus One Android Phone成功连接到另一个蓝牙Android手机。我可以使用输入和输出流进行连接并写入我的请求并阅读他们的响应。我的应用程序使用实时数据进行处理。我想知道有没有办法在不同的套接字上打开两个输入/输出流(有点像专用套接字)来进行通信?如果是的话我怎么能做到这一点?任何指针都会有帮助...Android - 为一个连接打开多个套接字(输入和输出流)

mmSocket.connect();

公共无效连接() 自:API级别5 尝试连接到远程设备。

该方法将阻塞,直到建立连接或连接失败。如果此方法没有异常返回,则此套接字现在已连接。

在设备发现过程中,不应尝试建立到远程蓝牙设备的新连接。设备发现是蓝牙适配器上的一个重量级过程,会显着降低设备连接速度。使用cancelDiscovery()取消正在进行的发现。发现不是由Activity管理的,而是作为系统服务运行的,因此即使应用程序没有直接请求发现,也应该始终调用cancelDiscovery(),以确保。

现在我的问题是:如何能连接使用两个插座......因为上面的函数使用套接字连接...和连接后,通过断开另一个套接字任何其他企图????

回答

2

这当然是可能的,但我猜你使用阻塞的套接字调用,因此你需要一个以上的线程做无用功的实时性。这也意味着如果要进行通信,则需要线程之间进行一点同步。

傻冒问题是坦言有点模糊,所以我不认为你会得到什么好的答案,除非你有资格这一点:你到底想做什么?为什么你需要多个插座?第二个插座是什么?

+0

我希望我的第一个输入/输出流频繁轮询,而我的第二个输入/输出流将发送随机非频繁命令到蓝牙设备 – 2011-02-09 12:24:48