Android服务上的依赖注入

时间:2012-09-04 13:32:35

标签: java android dependency-injection roboguice

我正在开发Android应用并使用Roboguice 2.0。

除了现在,一切都变得令人难以置信。我正在尝试将我的自定义绑定注入到这样的服务中,但它无法正常工作。

    @Inject
private TicketService ticketService;

@Inject
private PerformanceService performanceService;

他们这样绑定(首先是自定义应用上下文):

 RoboGuice.setBaseApplicationInjector(
            this, 
            RoboGuice.DEFAULT_STAGE,
            Modules.override(RoboGuice.newDefaultRoboModule(this))
                .with(
                    new KoliseoModule(),
                    new DatastoreModule(this),
                    new ServiceModule()
                    ));


 public class ServiceModule extends AbstractModule {

@Override
protected void configure() {
      bind(JsonCheckinTimestampService.class).to(JsonCheckinTimestampServiceImpl.class);
    bind(PerformanceService.class).to(PerformanceServiceImpl.class);
    bind(ShowService.class).to(ShowServiceImpl.class);
    bind(TicketService.class).to(TicketServiceImpl.class);
    bind(ValidationStatisticsService.class).to(ValidationStatisticsServiceImpl.class);
}

}

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:0)

很可能甚至可能保证应用程序的Application子类已加载&在创建其余实例之前进行实例化,以便您可以尝试。 创建一个“MyApplication extends Application”类并在其“onCreate()”中进行设置,不要忘记在清单中声明。