【问题标题】:Writing D-Bus service with pygobject?用 pygobject 编写 D-Bus 服务?
【发布时间】:2019-02-17 15:09:04
【问题描述】:

我正在尝试编写 D-Bus 服务。但我对蟒蛇感到困惑 包 pygobjectdbus-python

是否可以单独使用 pygobject 编写 D-Bus 服务(不使用 dbus-python)?我的理解是 pygobject 提供了一切 dbus-python 可以。它是否正确?还是我需要 dbus-python?

我通过 D-Bus 成功调用了其他程序的方法,只需使用 pygobject。但是如何在 D-Bus 中提供自己的接口和方法作为服务呢?据我了解,我必须继承我的接口类 Gio.DBusInterfaceSkeleton[1]。但是如何导出自己的方法?

[1]https://lazka.github.io/pgi-docs/Gio-2.0/classes/DBusInterfaceSkeleton.html

【问题讨论】:

    标签: python dbus pygobject


    【解决方案1】:

    目前无法在 pygobject 中编写 D-Bus 服务,因为稳定版本的 gobject-introspection 似乎无法正确检测所有虚拟方法,尤其是 get_vtable 方法。您会注意到the generated API docs 中缺少do_get_vtable。我尝试构建 gobject-introspection 1.59.4,它能够从 glib 2.58.1 中提取正确的 typelib 信息,所以也许未来还有希望。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-29
      • 1970-01-01
      • 2018-01-13
      • 1970-01-01
      • 2019-01-19
      • 2023-03-07
      • 2016-12-02
      • 2012-11-30
      相关资源
      最近更新 更多