我正在使用 Android 的 Cling 实现一个控制点,在我的一项活动中,我需要知道主机提供的状态变量的值。状态变量值在启动主机时设置,除非重新启动主机,否则不会更改。
如何获取状态变量的当前值?AFAIK 文档仅解释了如何订阅状态变量事件,我无法使用这些事件,因为变量不会触发任何事件。或者,也许我应该编写一个 UPnP 操作来检索值?
在非常早期的 UPnP 规范中有一个QueryStateVariable
操作,但它已被弃用,当前规范不允许控制点使用它,服务开发人员必须定义特定于变量的查询操作。
如果您使用的服务非常旧(我相信 1.0 之前),那么您可能仍然必须使用该方法,但请先检查是否有适当的特定于变量的方法。我对Cling不太熟悉,但它似乎确实有一个QueryStateVariableAction。