建立到蓝牙耳机的连接


我们仍然使用BlueZ来建立连接。
BlueZ给我们提供了方便的DBus调用接口,使得我们可以方便地使用Python来进行调用。

对象的获取流程如下:(可以使用D-Feet来进行查看)
1、bus -> manager -> adapter -> device
2、得到device对象后,可以获取 AudioSink/Audio/Headset/Control等对象
3、对AudioSink/Audio/Headset /Control等对象进行操作

=== 一段Python脚本例子 ===
mac = 'XX:XX:XX:XX:XX:XX'
import dbus
bus = dbus.SystemBus()
### bus -> manager -> adapter -> device ###
manager = dbus.Interface(bus.get_object('org.bluez', '/'), 'org.bluez.Manager')
adapters = manager.ListAdapters()
print adapters
if (len(adapters) < 1):
  print "Please insert an adapter, and Run Me again."
  sys.exit(1)
adapter = dbus.Interface(bus.get_object("org.bluez", manager.DefaultAdapter()),
        "org.bluez.Adapter")
print adapter
try:
  device = adapter.FindDevice(mac)
  print "FindDevice: %s" % device
except:
  device = adapter.CreateDevice(mac)
  print "CreateDevice: %s" % device
  device.SetProperty("Trusted", dbus.Boolean(1))
### AudioSink ###
audiosink = dbus.Interface(bus.get_object('org.bluez', device), 'org.bluez.AudioSink')
try:
  audiosink.Connect()
  print "Connect to AudioSink OK"
except:
  if ( audiosink.IsConnected() ):
    print "Connect to AudioSink Already"
  else:
    print "Connect to AudioSink Failed"
  pass
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值