需要在activity的onDestroy()方法中调用subject的onComplete()吗?
Do we need to call onComplete() of subject in onDestroy() method of activity?
如果在ActivityA中,它保持对
的引用
private val subjectA: PublishSubject<ObjectB> = PublishSubject.create()
private var dispose: Disposable? = null
是否需要在Activity
的onDestroy()方法中调用subject的onComplete()方法
override fun onDestroy() {
subjectA.onComplete()
dispose?.dispose()
super.onDestroy()
}
不需要(也不应该调用)在 Activity/fragment 的 onDestroy
中调用 onComplete
因为它用于发出数据传输完成的流,并且当视图被销毁时,它与 completion.You 不同,因为 Dispose 是一个不同的用例,应该只处理 Disposable 并停止任何进一步的基于推送的通知,而不是告诉观察者 onError/onComplete.
来自文档:
Notifies the Observer that the Observable has finished sending
push-based notifications.
要了解 dispose 和 complete 之间的区别,请参阅下面 link 的内容:
如果在ActivityA中,它保持对
的引用private val subjectA: PublishSubject<ObjectB> = PublishSubject.create()
private var dispose: Disposable? = null
是否需要在Activity
的onDestroy()方法中调用subject的onComplete()方法override fun onDestroy() {
subjectA.onComplete()
dispose?.dispose()
super.onDestroy()
}
不需要(也不应该调用)在 Activity/fragment 的 onDestroy
中调用 onComplete
因为它用于发出数据传输完成的流,并且当视图被销毁时,它与 completion.You 不同,因为 Dispose 是一个不同的用例,应该只处理 Disposable 并停止任何进一步的基于推送的通知,而不是告诉观察者 onError/onComplete.
来自文档:
Notifies the Observer that the Observable has finished sending push-based notifications.
要了解 dispose 和 complete 之间的区别,请参阅下面 link 的内容: