在花了一些时间了解D-Bus会话和系统总线是如何工作之后,我现在专注于允许人们使用和内省我的服务,以便允许任何人使用我的服务轻松实现功能。 / p>
然后我编写了以下配置文件,放在我的/etc/dbus-1/system.d/
中:
<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
<policy user="root">
<allow own="org.zedroot.Test" />
<allow send_destination="org.zedroot.Test" />
</policy>
<policy context="default">
<allow send_destination="org.zedroot.Test"
send_interface="org.zedroot.Test" />
<allow send_destination="org.zedroot.Test"
send_interface="org.freedesktop.DBus.Introspectable" />
<allow send_destination="org.zedroot.Test"
send_interface="org.freedesktop.DBus.Properties" />
</policy>
</busconfig>
但是使用d-feet我可以看到我的服务但不能反省它(我的服务中没有看到任何内容:没有方法,信号或属性)。
有人可以帮助我吗?
答案 0 :(得分:0)
重新启动计算机后,它现在正在运行。
答案 1 :(得分:0)
以供将来参考。
以下内容应足以对您的服务进行自省:
.
.
<!-- Allow introspect -->
<policy context="default">
<allow send_destination="org.zedroot.Test"/>
</policy>
.
.