Android 单一网络请求改造和RXJava的多重订阅?
我对RxJava和改型还不熟悉。假设我有改装服务,其返回值可观察为Android 单一网络请求改造和RXJava的多重订阅?,android,rx-java,retrofit2,rx-android,Android,Rx Java,Retrofit2,Rx Android,我对RxJava和改型还不熟悉。假设我有改装服务,其返回值可观察为 Observable <User> login(String userName, String password); 可观察登录(字符串用户名、字符串密码); 我怎样才能在多个地方订阅这个可观察的。我想在多个android活动上订阅它 例如:假设我有一个登录页面和登录页面活动。登录页面出现在登录页面之后。当我在登录页面上发出网络请求时,应该在登录页面和登录页面上观察结果 如何实现这一点?您可以进行登录(用户名,p
Observable <User> login(String userName, String password);
可观察登录(字符串用户名、字符串密码);
我怎样才能在多个地方订阅这个可观察的。我想在多个android活动上订阅它
例如:假设我有一个登录页面和登录页面活动。登录页面出现在登录页面之后。当我在登录页面上发出网络请求时,应该在登录页面和登录页面上观察结果
如何实现这一点?您可以进行
登录(用户名,pw)。cache()
-cache()
自动连接到源可观察项,并将所有发出的项重放到其订阅者。它可以很好地用于发射单一结果的可见光,就像改装一样。另一个选项-replay()
,它返回ConnectableObservable
,并仅在调用ConnectableObservable.connect()
时订阅源代码。它有许多有用的重载(replay(bufferSize)
,replay(time,TimeUnit)
,等等),可以控制缓存了多少项。您可以进行登录(username,pw)。cache()
-cache()
自动连接到源可观测项,并将所有发出的项重放到订阅服务器。它可以很好地用于发射单一结果的可见光,就像改装一样。另一个选项-replay()
,它返回ConnectableObservable
,并仅在调用ConnectableObservable.connect()
时订阅源代码。它有许多有用的重载(replay(bufferSize)
,replay(time,TimeUnit)
,等等),可以控制缓存了多少项。这是正确的响应。然而,我敦促@Sushant将可观察对象重新定义为他心目中的通知模型,因为由于可观察对象固有的局限性,它不能很好地工作(例如,“登录-注销-使用不同凭据登录”用例在他的设计中如何工作?)。相反,我建议使用事件总线。这是正确的回答。然而,我敦促@Sushant将可观察对象重新定义为他心目中的通知模型,因为由于可观察对象固有的局限性,它不能很好地工作(例如,“登录-注销-使用不同凭据登录”用例在他的设计中如何工作?)。相反,我建议使用事件总线。