解决了bluecove在mac下运行的2个问题

来源:互联网 发布:淘宝怎么看身份证号码 编辑:程序博客网 时间:2024/06/07 03:36

哎,怎么我玩的全是国内不玩的。。汗


背景1:要做一个pc上的蓝牙设备查找功能,随便什么语言都行,搜了一圈,还是用java吧,有个叫做bluecove的jar包。

背景2:用的是mac air x64,10.8.2 mountain lion的系统。


eclipse建个工程,导入jar包,按照例子写俩代码文件:

http://code.google.com/p/bluecove/source/browse/trunk/bluecove/src/test/java/com/intel/bluetooth/javadoc/RemoteDeviceDiscovery.java

http://code.google.com/p/bluecove/source/browse/trunk/bluecove/src/test/java/com/intel/bluetooth/javadoc/ServicesSearch.java

运行,报错了,Native Library bluecove not available

google一下,64位的操作系统要设置一个java运行参数,-d32

再运行,又报错了,dyld: lazy symbol binding failed: Symbol not found: _IOBluetoothLocalDeviceReadSupportedFeatures

google一下,3篇文章搞定,PS:要翻墙

http://sbagleysd.wordpress.com/2011/02/03/bluecove-and-snow-leopard-mac-os-x-10-6-6/

http://www.uweschmidt.org/wiimote-whiteboard/comment-page-45#comment-246167

https://groups.google.com/forum/?hl=en&fromgroups=#!msg/bluecove-users/7jWv1V1GC-4/6pShd9vssAEJ

大体意思就是,Mac的10.8系统把bluetooth的(api名称?)换了,(不兼容?唉)而bluecove也没及时更新,所以....

解决方法就是下一个10.7之前的IOBluetooth(http://www.uweschmidt.org/files/WW_MountainLion.zip),然后放到eclipse的运行目录下,用下面的脚本来启动eclipse。

#!/bin/bashDIR=$( cd "$( dirname "$0" )" && pwd )export DYLD_LIBRARY_PATH=$DIR./eclipse

国内用mac开发的人少啊,几乎没人遇到这样的问题,另外,对待问题的专研心态真心不行,鄙视下自己,哈哈。


原创粉丝点击