当前位置: 首页 > 面试题库 >

片段中的组件从未激活

徐知
2023-03-14
问题内容

当我使用OSGi声明式服务在片段内创建组件时,该组件未激活,但主机捆绑包中的组件被激活。我想念什么吗?我的片段具有meta- inf用于主机捆绑包符号名称的正确文件条目。

我以这种方式宣布一个伴侣

@Component(immediate = true)

问题答案:

因为从不启动捆绑包片段,所以永远不会激活其中的仅已解析声明式服务组件。该规范特别指出片段中的Service-
Component标头(将注释转换为标头)将被忽略。

您可以使声明性服务适用于片段,但只能通过从主机中的Service-
Component标头引用片段中的XML文件来进行。不幸的是,让主机包知道片段中的内容可能与您追求的架构模式相反。我什至不确定使用SCR注释是否可以进行这种安排。一种选择是使用蓝图从片段中声明式注册服务,这确实有效。在http://aries.apache.org/documentation/tutorials/blueprinthelloworldtutorial.html上有一个蓝图教程。

-

实施中的企业OSGi:www.manning.com/cummins



 类似资料:
  • 我正试图在现有的应用程序中实现新的Android导航组件。我有两个片段除了名字外都是一样的。当我将startDestination设置为fragment2时,片段似乎显示正确。当startDestination设置为fragment1时,我看不到膨胀的视图,但我确实看到了“Fragment 1 created”toast。 我做错了什么? 导航图。xml 主活动布局: Fragment1布局: 依

  • 我有一个,它创建一个,然后这个创建另一个: 这让我想到。是否真的可以删除并转到? 提前感谢您的时间,我在网上找不到任何合适的信息!

  • 在我的应用程序中,我使用了一个活动和四个片段。在这个应用程序中,我使用了导航组件。我的片段加载顺序是A- 在设备背面的碎片D中,按下按钮,我想从背面移除碎片C,以便碎片B可以打开。有人建议我怎么做吗提前谢谢 这是我的导航图。xml

  • 我用的是4号路由器。 当我渲染组件与渲染参数组件WillReceiveProps()它不火的第一次,所以我需要点击两次发送道具到组件。 我呈现如下: 如果没有路由器(当所有组件都在同一个页面上),它的工作正常。 以下是详细说明: 反应路由器-需要点击链接两次才能将道具传递给组件

  • 我试图在片段中填充一个具有自定义布局的listView。但是,当我启动应用程序时,listview的内容没有加载(这是使用数组适配器获得的)。下面是加载listView的代码: 这里是我的CustomAdapter的代码: } 这是列表项布局的xml: 这里是主要布局: 我没有收到任何错误消息,但是当我启动应用程序时,listView中没有显示任何项目,并且永远不会调用我的适配器的getView方

  • 问题内容: 我知道有人问过这个问题,但是我遵循了所有答案,但仍然有同样的问题。我有两个脚本,一个是片段管理器(IngredientsActivity),另一个是片段(OtherList)。代码如下 成分活动 其他清单 我发现有多个建议可以覆盖onSaveInstanceState的建议,并且我发现更多建议告诉我使用setRetainInstance。我不知道如果要保存列表的值,为什么setReta