我正在尝试手动使用蓝牙协议栈(在关闭蓝牙协议栈之后)。
我查看了BlueCoveImpl.java并找出了在
private BluetoothStack detectStack()方法,我尝试通过调用
BlueCoveImpl.instance().getBluetoothStack(); 但是发生了异常:
Exception in thread "main" java.lang.Error: Illegal use of the JSR-82 API
at com.intel.bluetooth.Utils.isLegalAPICall(Utils.java:296)
at com.intel.bluetooth.BlueCoveImpl.getBluetoothStack(BlueCoveImpl.java:1023)我还尝试了BlueCoveImpl.instance();BlueCoveImpl.getThreadBluetoothStackID();
但它没有任何效果。
如何启动BlueCove?
发布于 2015-06-21 19:07:33
该方法
getBluetoothStack()执行某种安全检查,方法是调用
Utils.isLegalAPICallhttp://bluecove.googlecode.com/svn/trunk/bluecove/src/main/java/com/intel/bluetooth/Utils.java
此方法检查调用是否从这些包之外的类完成
否则它将抛出
Error("Illegal use of the JSR-82 API")我觉得给你打电话
LocalDevice.getLocalDevice()http://bluecove.org/bluecove/apidocs/javax/bluetooth/LocalDevice.html#getLocalDevice()
将根据需要初始化堆栈。有关Bluecove如何确定正确的堆栈以及如何使用"bluecove.stack“系统属性进行一些配置的更多信息,请参见https://code.google.com/p/bluecove/wiki/stacks。
https://stackoverflow.com/questions/16379486
复制相似问题