Я начал работать с DBus и bluetooth в Qt. Я хочу разработать скрипт, который просто вызовет метод через DBus и получит ответ. Часть кода здесь (то есть основная часть acutally):Реализация dbus org.bluez в Qt
QString hostname("00:07:80:60:CE:22");
QDBusConnection bus = QDBusConnection::sessionBus();
QDBusInterface interface("org.bluez", "/", "Manager", bus, 0);
qDebug()<<"is valid: "<<interface.isValid()<<interface.lastError();
interface.lastError() дает следующие ошибки:
QDBusError ("org.freedesktop.DBus.Error.ServiceUnknown", «Имя org.bluez не было предоставлено никакими .service файлами»)
У меня есть синийz и dbus. Я могу искать устройства Bluetooth из команды.
Я также попробовал команду Судо bluetoothd -d -n и я получаю это: установка D-Bus не удалось: Имя уже используется bluetoothd [21952]: Не удалось получить на D-Bus
Кто-нибудь знает что может быть проблемой?
Вы получаете ответы от команд dbus, попробуйте эту команду, если нет ответа, bluez не зарегистрирован в команде dbus: dbus-send --system --type = method_call --print-reply --dest = org.bluez "/" org.bluez.Manager.ListAdapters – ashish
Неправильное имя интерфейса? Вместо этого попробуйте: интерфейс QDBusInterface («org.bluez», «/», «org.bluez.Manager», bus, 0); – jaguzu