设置DBus属性时出错

时间:2016-07-21 06:14:44

标签: python qt5 dbus

我正在尝试使用Qt5.7.0设置DBus接口的属性。 这是doc:

http://git.kernel.org/cgit/network/ofono/ofono.git/tree/doc/modem-api.txt

我希望将Powered属性设置为true。 这是我的代码:

QDBusInterface *iface = new QDBusInterface("org.ofono", "/hfp/org/bluez/hci0/dev_xx_xx_xx_xx_xx_xx", "org.ofono.Modem", QDBusConnection::systemBus());
iface->call("SetProperty", "Powered", QVariant(true));

这是错误:

  

QDBusError(“org.freedesktop.DBus.Error.UnknownMethod”,“方法”SetProperty“在界面”org.ofono.Modem上签名“sb”不存在“)

路径来自GetModem方法,这是正确的。 另外,我尝试使用Python:

modem = dbus.Interface(bus.get_object('org.ofono', '/hfp/org/bluez/hci0/dev_xx_xx_xx_xx_xx_xx'), 'org.ofono.Modem')
modem.SetProperty('Powered', dbus.Boolean(1))

它工作正常!所以问题肯定与我的Qt5代码有关。 如何更好地理解错误信息?我的签名是错的还是根本找不到SetProperty方法?

0 个答案:

没有答案