I have a problem with Dagger2 singleton annotation. My module looks a bit like this:
@Module
public class MyModule {
@Singleton
@Provides
MyInterface provideSipManager(Context context) {
Log.d("running provider");
return new MyClass(context);
}
}
Component is similar to:
@Component(modules = {ApplicationModule.class, MyModule.class})
@Singleton
public interface ApplicationComponent {
Context context();
void inject(MyApplication application);
void inject(Myactivity1 myActivity);
void inject(Myactivity2 myActivity);
}
The problem is that everytime I inject MyInterface, I get completely new object. I'm using Singleton annotation, so I should get the same instance. What am I doing wrong?