As it is a very common question about Rx and Chronos pros and cons, I’ll try to answer it.
Rx does not bind to an activity of fragment lifecycle. It provides a Subscription class to help you do it, but this class doesn’t do all the work: you still have to save subscriptions manually, in retain fragments or somwhere else (by the way, retain fragments can’t be nested, so it makes it more complicated if you do a single-activity app).
There is a RxLifecycle project, but it also doesn’t help to solve all the problems. With RxLifecycle you may tell the Rx library, that some request should be executed until a particular lifecycle stage is passed. But you can’t unbind from background task in onPause() for example, and later bind to the task again in onResume(), because there is no mechanism of saving references to background tasks.
Chronos, however, is designed only to make foreground-background binding as easy as possible. In fact, using Chronos, you should not care about that stuff at all. It will keep your background tasks for you, and notify an UI objects when some task is finished, but only if the UI object is in the proper stage, keeping the result otherwise, until the stage is reached. Also it helps you to not worry about if some task has started, and should be either started, or be bound to.
So, Rx is a library that gives you an easy way to implement a reactive programming paradigm. Chronos makes you free from manually resolving foreground-background communication. In fact, those two libraries are called to do different stuff, and are not replacements for each other.