Добавить кортеж в xml самоанализа gdbus

Как я могу получить несколько значений int32, т.е. когда я получаю одно значение, мне нужно указать его как type=i ,

<method name="foo3" >
  <annotation name="org.dsource.dbus.d.Returns" value="bar"/>
  <arg name="bar" type="i" direction="in"/>
</method>

но это не позволяет мне указать, как, когда я это делаю, я получаю сообщение об ошибке, поскольку ожидаемое значение равно нулю

<method name="foo3" >
  <annotation name="org.dsource.dbus.d.Returns" value="bar"/>
  <arg name="bar" type="ii" direction="in"/>
</method>

тогда я попробовал

<method name="foo3" >
  <annotation name="org.dsource.dbus.d.Returns" value="bar"/>
  <arg name="bar" type="(ii)" direction="in"/>
</method>

Сообщение об ошибке:

Ошибка org.freedesktop.DBus.Error.InvalidArgs: тип сообщения "(ii)" не соответствует ожидаемому типу "((ii))"

Он выдает ошибку, поскольку ожидаемое значение равно ((ii)). Мне нужно получить следующее: мне нужно изменить ожидаемое значение как (ii). Пожалуйста, дайте мне ответ. Спасибо заранее.


person Community    schedule 17.02.2015    source источник


Ответы (1)


Вы можете использовать его как ,

 <method name='YourMethod'>"
    <arg type='i' name='name1' direction='in'/>"
     <arg type='i' name='name2' direction='in'/>"
 </method>"

и вы можете использовать (ii) формат кортежа для вызова метода

person Akhil V Suku    schedule 23.02.2015