0
我使用JobQueue库,我可以成功注入一些类如GithubService到例如:Android的注射类返回NULL
public interface GithubService {
@GET("repositories")
Call<List<GithubRepo>> getAllRepositories();
}
现在我试图注入其它类如RxBus
public interface Bus {
void register(@NonNull Object observer);
<T> CustomSubscriber<T> obtainSubscriber(@NonNull Class<T> eventClass, @NonNull Consumer<T> receiver);
<T> void registerSubscriber(@NonNull Object observer, @NonNull CustomSubscriber<T> subscriber);
void unregister(@NonNull Object observer);
void post(@NonNull Object event);
}
到作业文件,但我得到空
作业类:
public class GetLatestRepositories extends Job implements JobManagerInjectable {
@Inject
transient GithubService githubService;
@Inject
transient Bus eventBus;
private Call<List<GithubRepo>> repositoryCall;
public GetLatestRepositories() {
super(new Params(JobPriority.MID).requireNetwork().persist());
eventBus.register(this); /* IS NULL*/
}
@Override
public void onAdded() {
}
...
@Override
public void inject(ApplicationComponent component) {
component.inject(this);
}
}
ApplicationComponent
@ActivitiesScope
@Component(dependencies = GithubApplicationComponent.class)
public interface ApplicationComponent {
void inject(ActivityRegister activityRegister);
void inject(ActivityStartUpApplication activityStartUpApplication);
void inject(GetLatestRepositories getLatestRepositories);
}
GithubApplicationComponent
@AlachiqApplicationScope
@Component(
modules = {
UserInformationModule.class,
NetworkServiceModule.class,
PicassoModule.class,
JobManagerModule.class,
RxModule.class,
ActivityModule.class
}
)
public interface GithubApplicationComponent {
Picasso getPicasso();
GithubService getGithubService();
JobManager getJobManager();
Bus getBus();
}
RxModule
@Module
public class RxModule {
@Provides
@AlachiqApplicationScope
public Bus getBus() {
return new RxBus();
}
}
哪个模块'@'Provides'例如Bus'?分享该模块的代码。 – azizbekian
@azizbekian我的帖子已更新,我在帖子末尾添加了 –
'RxBus'类在哪里? – azizbekian