我认为最简单的解释方法是使用包含RxJava的代码示例
select st.sampleValue
from sampleTable st
left join sampleTable st2
on st2.po=st.po
where
st.PO=123 or
(st.pk > st2.pk &&
st.pk <
(select top 1 st3.pk
from sampleTable st3
where st3.pk > st2.pk
&& st3.po is not null
order by st3.pk asc))
order by st.sampleValue asc
所以我想要做的就是让类能够要求一个CompositeSubscription并且他们得到那个范围的那个。这样他们就可以自由地取消订阅整个CompositeSubscription。这是必要的,以便我的单身人士不会干扰我的活动,这些活动不会干扰我的碎片。
答案 0 :(得分:0)
您不能在多个范围内提供相同的类。您收到错误{Class} is bound multiple times
。
因此以下设置无效
@Module
public class ActivityRxJavaModule {
@Provides
@PerActivity
CompositeSubscription providesCompositeSubscription() {
return new CompositeSubscription();
}
}
@Module
public class FragmentRxJavaModule {
@Provides
@PerFragment
CompositeSubscription providesCompositeSubscription() {
return new CompositeSubscription();
}
}
所以我知道有两种解决方案。
我似乎更喜欢每个范围的子类,因为我觉得在重构时它更安全一些,但两者都应该有效。