【问题标题】:How to set a variant array with dbus-send?如何使用 dbus-send 设置变体数组?
【发布时间】:2017-06-15 08:03:28
【问题描述】:

进行此查询:

dbus-send --system --print-reply --dest=org.ofono /he910_0 org.ofono.ConnectionManager.GetContexts

我得到以下结构:

array [
  struct {
     object path "/he910_0/context1"
     array [
         dict entry(
           string "AccessPointName"
           variant                   string "mobile.vodafone.it"
        )
       ....
        dict entry(
           string "Settings"
           variant                   array [
              ]
        )
     ]
  }

我想用 dbus-send 消息设置“设置”属性。我试过了:

dbus-send --system --print-reply --dest=org.ofono /he910_0/context1 org.ofono.ConnectionContext.SetProperty string:"Settings" variant:array:string:"Interface=ppp0","Method=dhcp" 

但我收到:

dbus-send: Unknown type "array"

那么,最后一个问题是:如何通过 dbus-send 设置一个变体数组?

【问题讨论】:

  • 知道如何以数字或十六进制显示数组内容吗?

标签: dbus


【解决方案1】:

您无法使用 dbus-send 执行此操作,但您可以使用非常相似的工具 gdbus 执行您想要的操作。见how to use parameters signature as "a{sv}" in dbus-send

【讨论】:

  • 确实如此。根据man dbus-send:“dbus-send 不允许……嵌套容器”;包含数组的变体是嵌套容器。
猜你喜欢
  • 2012-02-09
  • 2018-07-16
  • 2017-09-18
  • 2014-09-02
  • 2015-02-28
  • 2011-04-11
  • 1970-01-01
  • 2016-07-10
  • 1970-01-01
相关资源
最近更新 更多