WiFi和蓝牙发现问题

3
我有一个应用程序需要在循环中保持蓝牙发现过程,以始终发现新的蓝牙设备(当BroadcastReceiver接收到BluetoothAdapter.ACTION_DISCOVERY_FINISHED时,我只需再次调用startDiscovery())。我最近向应用程序添加了一些套接字通信,基本上是打开到服务器的套接字,发送数据,然后关闭套接字。
当我使用3G时,一切正常,嗅探器显示没有TCP重传,套接字干净地打开和关闭。然而,使用Wifi则显示大量TCP重传,有时甚至无法连接套接字(出现java.net.SocketException超时)。
我正在使用安卓2.2.1的三星Galaxy S手机。我是否忽略了什么?

请澄清您是使用蓝牙、WiFi还是3G与该插座通信? - garzanti
嗨,我有同样的问题。我有一个线程一直在发现设备,当我尝试进行http POST时它超时了。 - Enrique
1个回答

3

你可以尝试配置并将WiFi移动到不同的频道吗?如果你在2.4 GHz频段也使用WiFi,那么在初始探测/连接期间会出现干扰,连接后应该会变得更好,因为蓝牙应该会跳频以避免干扰(除非WiFi占用了整个频谱)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接