我正在努力在DBus上展示Qt 5.3中的接口。我有一个适配器,它实现了在openSuse Imagewriter的代码上建模的org.freedesktop.DBus.ObjectManager类。
当我使用" / com / company / blah / service"这样的路径调用registerObject时我看到了正确的界面。问题是,我不仅看到" / com / company / blah / service"在d-feet的对象树中,但我也看到" /"," / com"," / com / company"和" / com / company / blah",他们每个人都暴露了Introspectable,Peer和Properties,尽管这些对象并不存在于我的代码中。
当我在我的对象上创建另一个适配器并将其放在" / com / company / blah / service2"时,它会以我所期望的方式显示为d-feet中的新行。给我: / / com< - ? / com / company< - ? / com / company / blah< - ? / COM /公司/胡说/服务 / COM /公司/嗒嗒/服务2
做一些阅读,我没有看到对需要这种结构的对象路径的限制,也没有看到registerObject或qt库中的任何选项来防止暴露这些(假的)对象。
我用qdbusxml2cpp生成我的适配器类。代码在Debian 8 VM上运行。
有没有办法让这些物品不显示?