RxKotlin - 进程在调用处置时终止
RxKotlin - Process gets terminated when dispose is called
我正在尝试通过 rxkotlin 上传图像,我的问题是当我在我的应用程序中关闭我的屏幕时,上传过程被终止,因为我正在将该订阅添加到我的处置中,所以当我的屏幕关闭或销毁时我会处置。因为这个 dispose 我的工作被终止了,因为无论如何我需要处理其他它导致内存泄漏
fun uploadImage(imagePath : String){
uploadToServer(imagePath)
.subscribe()
.addTo(disposal)
}
override onCleared(){
disposal.dispose()
}
所以我是这样做的,有没有其他方法可以继续这项工作,即使在屏幕被破坏或清除后没有内存泄漏?
ViewModel
独立于 activity/fragment 生命周期或只是它们的配置更改 class,因此 onCleared
被调用仅在 activity 完成后。所以不要在 onCleared
上处理 Rx 变量。最好在 onDestroy
上处理它们
override onDestory(){
super.onDestroy()
disposal.dispose()
}
我正在尝试通过 rxkotlin 上传图像,我的问题是当我在我的应用程序中关闭我的屏幕时,上传过程被终止,因为我正在将该订阅添加到我的处置中,所以当我的屏幕关闭或销毁时我会处置。因为这个 dispose 我的工作被终止了,因为无论如何我需要处理其他它导致内存泄漏
fun uploadImage(imagePath : String){
uploadToServer(imagePath)
.subscribe()
.addTo(disposal)
}
override onCleared(){
disposal.dispose()
}
所以我是这样做的,有没有其他方法可以继续这项工作,即使在屏幕被破坏或清除后没有内存泄漏?
ViewModel
独立于 activity/fragment 生命周期或只是它们的配置更改 class,因此 onCleared
被调用仅在 activity 完成后。所以不要在 onCleared
上处理 Rx 变量。最好在 onDestroy
override onDestory(){
super.onDestroy()
disposal.dispose()
}