我在 Android 应用程序中使用 RoboGuice 3.0.1 和 RoboBlender。
我想要一个全局事件管理器,并注意到 RG3.0 已经有了它,如下所述:https://github.com/roboguice/roboguice/issues/150 https://github.com/roboguice/roboguice/issues/150
我已经添加了
bind(EventManager.class).annotatedWith(Names.named(DefaultRoboModule.GLOBAL_EVENT_MANAGER_NAME)).to(EventManager.class).asEagerSingleton();
到configure()中我的自定义模块类。
我有一个执行 Web API 请求的单例 WebUtil.class。我想利用全局事件管理器在 API 请求完成后发送事件。
我使用以下方法注入了 eventManager:
@Inject EventManager eventManager;
事件使用以下方式发送:
eventManager.fire(new MyAPIEvent());
我的 Activity 类中有一个 Observer 方法:
handleAPICallback(@Observes MyAPIEvent apiEvent) {
// do something with apiEvent object
}
但我没有看到handleAPICallback() 被调用。
我在网上搜索,找不到 GlobalEventManager 的单个示例。
任何帮助将不胜感激。
我通过在 RG 的 github 页面上发帖解决了这个问题。
链接在这里:https://github.com/roboguice/roboguice/issues/288#issuecomment-69770596 https://github.com/roboguice/roboguice/issues/288#issuecomment-69770596
经测试并验证其有效。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)