我是Roboguice的新手,我想在我的新Android应用程序中使用它。
我有一个扩展RoboActivity的测试活动。
public class MainActivity extends RoboActivity {
@Inject
private TestService testService;
....
}
这是我的TestService类:
public class TestService {
@Inject
private TestDao testDao;
@Inject
protected static Provider<Context> contextProvider;
public TestService(){
Log.d("TEST_SERVICE", "Constructor test");
}
public Test getById(Integer id) throws Exception{
return testDao.queryForId(id);
}
}
我希望注入内部的@Injected带注释字段并注入Class!
TestA由MainActivity注入。但是TestDao是null,也是我的contextProvider!
我还定义了一个roboguice.xml文件,它定义了我的IoCModule类:
public class IoCModule extends AbstractModule{
@Override
protected void configure() {
bind(TestDao.class).to(TestDaoOrm.class);
}
}
我不知道为什么内部@Inject不起作用!!
感谢您的任何建议!
谢谢 马可
答案 0 :(得分:2)
我已经解决了我的模块定义
requestStaticInjection( TestDaoOrm.class );