我对Dagger2单例注释有问题。 我的模块看起来有点像这样:
@Module
public class MyModule {
@Singleton
@Provides
MyInterface provideSipManager(Context context) {
Log.d("running provider");
return new MyClass(context);
}
}
组件类似于:
@Component(modules = {ApplicationModule.class, MyModule.class})
@Singleton
public interface ApplicationComponent {
Context context();
void inject(MyApplication application);
void inject(Myactivity1 myActivity);
void inject(Myactivity2 myActivity);
}
问题在于,每当我注入MyInterface时,我都会获得全新的对象。我正在使用Singleton注释,所以我应该得到相同的实例。我做错了什么?