python - lightblue Python 模块不能在 mac 上工作

标签 python bluetooth

我正在尝试在 mac osx 10.7.2 上通过 Python 连接到 wiimote。

为此,我正在尝试使用 lightblue。运行时:import lightblue Python 给我这个错误。

   >>> import lightblue
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/lightblue/__init__.py", line 160, in <module>
    from _lightblue import *
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/lightblue/_lightblue.py", line 27, in <module>
    import _IOBluetooth
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/lightblue/_IOBluetooth.py", line 47, in <module>
    globals=globals())
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC/objc/_bridgesupport.py", line 142, in initFrameworkWrapper
    _parseBridgeSupport(data, globals, frameworkName)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC/objc/_bridgesupport.py", line 42, in _parseBridgeSupport
    objc.parseBridgeSupport(data, globals, frameworkName, *args, **kwds)
ValueError: cftype for 'IOBluetoothDeviceInquiryRef' must include gettypeid_func, tollfree or both

我在这里找到了一个有类似问题的:http://python.6.n6.nabble.com/Python-bridgesupport-issue-on-Lion-td2161049.html#a32196961但答案对我帮助不大,因为在我看来它已经在使用 lightblue 的文件了。有什么建议吗?

最佳答案

似乎是 Apple 的 gen_bridge_metadata 的错误脚本。您可以通过手动编辑生成的文件来消除错误。

打开/System/Library/Frameworks/IOBluetooth.framework/Versions/Current/Resources/BridgeSupport/IOBluetooth.bridgesupport并删除以 <cftype 开头的行.

关于python - lightblue Python 模块不能在 mac 上工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8998426/

相关文章:

python - Keras 和 LSTM 中的二元分类

python - 适合运行多个站点的 Django 开发服务器的 cookie 域

python - 将变量从嵌入式 Python 传递到 C

linux - 从 headless 程序获取蓝牙事件

python - 在 PyParsing 中,如何定义一个 setParseAction 函数来将字符串列表转换为整数列表?

javascript - 将 python 客户端服务器转换为 websocket

ios - 如何在 iOS 应用程序中使用标准经典蓝牙配置文件?

Android 上的 Android 蓝牙交叉传输 key 派生支持

java - 如何使用Android Java在zebra ez320上打印条码?

ios - 获取BLE IOS外围设备的UUID,而不获取服务UUID