我正在使用BT支持编写Android 2.2应用程序。两个BT设备需要交换消息。
我遇到的问题发生在其中一个设备(服务器)崩溃/关闭或以某种方式停止连接时。它的套接字消失了,另一个参与者(客户端)根本不知道它应该尝试重新连接。
当第一个(崩溃的)参与者再次加注时,客户端不知道它应该重新连接并继续发送消息。 服务器充满了BT堆栈的错误,如: E / BTL-IFS_WRAPPER(11222):wrp_find_wsock:wrp_find_wsock无效hdl -1。
我理解服务器的BT发现有人向已经关闭的套接字发送消息。
所以基本的问题是如何在服务器崩溃时将客户端置于重新连接模式? 我看到只有一种可能性,每隔几秒就使用双向“保持活动”的数据包,并将服务器丢弃到监听器模式,将客户端丢弃到连接模式。