如何在 dbus-send 中使用变体字典 (`a{sv}`)
使用 a{sv}
时,我在 dbus-send
方面遇到一些问题
使用 in_signature='a{ss}'
调用方法似乎有效使用 以下命令行:
dbus-send --dest="org.test.TestService"
/org/test/TestService/object org.test.TestService.method1 dict:string:string:"a","1","b","2"
现在我想要一本带有值变体类型的字典 (in_signature=a{sv}
),
如何在dbus-send
中使用它?
I have some trouble with dbus-send
when using a{sv}
Calling a method with in_signature='a{ss}'
seems to work using the
following command line:
dbus-send --dest="org.test.TestService"
/org/test/TestService/object org.test.TestService.method1 dict:string:string:"a","1","b","2"
Now I would like to have a dictionary with a variant type for values
(in_signature=a{sv}
),
How can I use it in dbus-send
?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
不可能使用
dbus-send
如前所述,
dbus-send
并不支持所有 Dbus 类型。来自 dbus-send 手册页:但可能的
gdbus
埋藏在https://www.freedesktop.org/software/gstreamer-sdk/data/docs/2012.5/gio/gdbus.html我们看到这个:
奖励:此方法返回 ID,以便您可以关闭或替换通知。
Not possible with
dbus-send
As mentioned,
dbus-send
does not support all Dbus types. From dbus-send man page:But possible
gdbus
Buried in https://www.freedesktop.org/software/gstreamer-sdk/data/docs/2012.5/gio/gdbus.html we see this:
Bonus: this method returns the id, so you can close or replace the notification.
尽管 D-Bus 支持
a{sv}
等签名,但 dbus-send 不支持。这是来自 dbus-send 手册页:因此,据我所知,您不能使用 dbus-send 发送 string:variant 的字典。
Although D-Bus supports signatures such as
a{sv}
, dbus-send does not. This is from the dbus-send man page:So as far as I can understand it, you cannot send a dict of string:variant using dbus-send.
您需要使用以下补丁来编译 dbus-send。
https://chromium-review.googlesource.com/#/c/12323/2/sys-apps/dbus/files/dbus-1.4.12-send-variant-dict.patch
前几年,我在此链接上传了修补后的完整源代码。
https://gitlab.com/mujicion/dbus-send.git
You need to compile dbus-send with the following patch.
https://chromium-review.googlesource.com/#/c/12323/2/sys-apps/dbus/files/dbus-1.4.12-send-variant-dict.patch
FYR, I uploaded the patched full source at this link.
https://gitlab.com/mujicion/dbus-send.git
我编译了新版本的 dbus-send 但仍然存在发送 a{sv} 的问题。您能否提供此语法
I compiled the new version of dbus-send but still has an issue for sending a{sv}.Can you pl provide the syntax for this