Java Android Dagger2.11非作用域Appcomponent引用作用域绑定
我使用dagger2演示。我已将SharedReference添加到我的AppModule.java中Java Android Dagger2.11非作用域Appcomponent引用作用域绑定,java,android,dagger-2,Java,Android,Dagger 2,我使用dagger2演示。我已将SharedReference添加到我的AppModule.java中 @Module(subcomponents = { MainActivityComponent.class, DetailActivityComponent.class, Detail2ActivityComponent.class}) public class AppModule { @Provides @Singleton Context provideConte
@Module(subcomponents = {
MainActivityComponent.class,
DetailActivityComponent.class,
Detail2ActivityComponent.class})
public class AppModule {
@Provides
@Singleton
Context provideContext(Application application) {
return application;
}
@Provides
@Singleton //if i remove dagger works right
SharedPreferences providesSharedPreferences(Application application) {
return PreferenceManager.getDefaultSharedPreferences(application);
}
}
我在MainActivity中注入SharedReference。重建项目后,我得到一个错误
如果我通过ProvideSharedPreferences删除注释@Singleton,则项目重建权限为。
为什么ProvideSharedPreferences会出现@Singleton注释问题?您需要将@Singleton添加到AppComponent类中:
@Singleton // <---- Add this line
@Component(modules = {
AndroidInjectionModule.class,
AppModule.class,
ActivityBuilder.class})
public interface AppComponent {
@Component.Builder
interface Builder {
@BindsInstance Builder application(Application application);
AppComponent build();
}
void inject(AndroidSampleApp app);
}
@Singleton//Greate!你保证了我的时间。很难描述我的匕首2.11绝望。哦…是的,很难实现匕首2也是同样的问题,很难描述我的匕首2.11绝望,哦。。。