RxLifecycle
Lifecycle handling APIs for Android apps using RxJava
...If you subscribe after pause, it will terminate at the next destruction event (e.g., pasue will terminate in stop). RxLifecycle does not actually unsubscribe the sequence. Instead it terminates the sequence. The way in which it does so varies based on the type. If a sequence requires the Subscription.unsubscribe() behavior, then it is suggested that you manually handle the Subscription yourself and call unsubscribe() when appropriate.