是否可以控制pickup
文件夹中丢弃的捆绑包的起始级别?在某个其他服务可用之前,捆绑包有没有办法要求它不被激活?
我们有很多相互依赖的捆绑包完全由起始级别管理;即如果Bundle Y在启动时需要Bundle X,则Y具有更高的启动级别。
如果在拾取目录中删除了捆绑包,则此方法无法正常工作。似乎这些捆绑包在任何其他捆绑之前以及它们之间的任意顺序开始,可能同时开始。
有没有办法控制拾取文件夹中包的起始级别?
更好的是,有没有办法让bundle声明其依赖于其他服务?在这种情况下,我甚至可以在拾取时使用多个捆绑包,而另一个依赖于另一个捆绑包。
答案 0 :(得分:0)
您只能将捆绑包的分辨率限制为功能的可用性,而不是激活。激活肯定会在解决后发生,但可以按任何顺序激活已解决的捆绑包。因此,捆绑级别的激活依赖关系不能很好地工作。
相反,您应该使用“组件”(即声明性服务),它们可以选择将其生命周期与其他组件的可用性绑定。使用此选项,bundle可以以任意顺序启动,但是一旦所有服务依赖项被激活,服务仍然只被激活/暴露。