有什么方法可以关闭BlueCove堆栈,在我的应用程序中,用户可以随时启动,停止和重新启动蓝牙服务器,为此,我可以启动服务器,侦听连接并接受来自客户端的消息。但是,当我尝试停止并重新启动BlueCove时,我正在获取BluetoothStateException,而必须重新启动应用程序本身。

我曾经用过关机

BlueCoveImpl.shutdown();


还有另一件事

BlueCoveImpl blueCoveImpl = BlueCoveImpl.instance();
blueCoveImpl.setBluetoothStack(null);


但两者都不适合我。

任何想法做到这一点。

编辑:当我关闭整个应用程序时,它将显示


  BlueCove堆栈关闭已完成


在控制台中。

谢谢。

最佳答案

启动蓝牙服务器时,我使用以下命令将其设置为在搜索模式下可见:

LocalDevice local = LocalDevice.getLocalDevice();
local.setDiscoverable(DiscoveryAgent.GIAC);


为了停止服务器,我刚刚添加了以下代码,

local.setDiscoverable(DiscoveryAgent.NOT_DISCOVERABLE);


而这个解决了我的问题。

09-29 23:54