PyBluez的第一个也是最基本的示例是“examples/simple/inquiry.py”,它被描述为“检测附近的蓝牙设备”。这正是我想做的——检测并列出附近的蓝牙设备。
但是,当我运行示例代码时:
import bluetooth
print("performing inquiry...")
nearby_devices = bluetooth.discover_devices(
duration=8, lookup_names=True, flush_cache=True, lookup_class=False)
print("found %d devices" % len(nearby_devices))
for addr, name in nearby_devices:
try:
print(" %s - %s" % (addr, name))
except UnicodeEncodeError:
print(" %s - %s" % (addr, name.encode('utf-8', 'replace')))
我注意到
- 即使手机距离运行此脚本的笔记本电脑约 4 厘米,也未检测到我手机的蓝牙网络。
- 列出的 4 个蓝牙设备是已知的/与我的操作系统配对的 4 个,即使它们目前都不在我的 10 英里范围内。
所以,我想知道它为什么这样做以及如何让它真正扫描/列出附近的设备?
我在 Windows 7 和 Python 3.5 上