只能有限次数重新建立蓝牙连接

时间:2013-04-30 16:25:30

标签: bluetooth

我有一个应用程序(活动和服务)可以与单独的设备建立连接,并通过spp蓝牙从中提取数据。

每天需要做一次。

但是,手机(服务器)重新建立与设备(客户端)的连接的次数似乎有限。

在LogCat中,我看到了这个错误: BluetoothEventLoop.ccp

onCreateDeviceResult:D.Bus错误:org.freedesktop.DBus.Error.LimitsExceeded(已达到每个连接的最大待处理回复数)

onCreateDeviceResult的BluetoothEventLoop结果:-1

我正在考虑以编程方式重新启动手机但不想这样做吗?

您有任何想法如何克服这个问题。

理想情况下,手机将作为集线器运行,永久连接到电源,持续数周。 我正在运行Android 2.3.7。

1 个答案:

答案 0 :(得分:0)

您是否使用此方法在连接线程中创建套接字?

tmp = device.createRfcommSocketToServiceRecord(MY_UUID);

我在2.3.6上遇到了同样的错误并使用反射方法修复了它。我用以下代码替换了上面的代码:

Method m = device.getClass().getMethod("createRfcommSocket", new Class[] {int.class});
tmp = (BluetoothSocket) m.invoke(device, 1);

我使用与其他问题相同的解决方案: Service discovery failed exception using Bluetooth on Android