当我使用qdbusxml2cpp创建适配器时,创建的类没有org interface.freedesktop.DBus.Introspectable的Introspect方法。可能是怎么回事?这个方法不是应该自动生成吗?
xml文件的内容:
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node name="/com/company/product/interface">
<interface name="com.company.product.interface">
<method name="sendCommand">
<arg type="s" name="device" direction="in"/>
<arg type="s" name="command" direction="in"/>
<arg type="b" name="success" direction="out"/>
</method>
<method name="sendCommandEx">
<arg type="s" name="device" direction="in"/>
<arg type="s" name="command" direction="in"/>
<arg type="b" name="success" direction="out"/>
<arg type="s" name="result" direction="out"/>
</method>
</interface>
</node>
qdbusxml2cpp
不会自动生成org interface.freedesktop.DBus.Introspectable
界面,需要手动添加:
<interface name="org.freedesktop.DBus.Introspectable">
<method name="Introspect">
<arg type="s" name="xmlData" direction="out"/>
</method>
</interface>