Como lidar com paginação com RxJava?

Estou pensando em converter meu aplicativo Android para usar Rxjava para solicitações de rede. Atualmente, acesso um serviço da web semelhante a:

getUsersByKeyword(String query, int limit, int offset)

Pelo que entendi, os Observáveis são uma interface "push" em vez de "pull". Então, aqui está como eu entendo as coisas para dar certo:

O aplicativo é registrado com o serviço, obtendo Observable para consultaos resultados são enviados para o aplicativoaplicativo lida com resultadosquando o aplicativo deseja mais resultados ...?

É aqui que as coisas se deterioram para mim. Anteriormente, eu apenas solicitava exatamente o que eu queria ao serviço da web e fazia a consulta novamente com o deslocamento. Mas neste caso, isso envolveria a criação de outro Observável e a assinatura dele, meio que derrotando o ponto.

Como devo lidar com paginação no meu aplicativo? (É um aplicativo para Android, mas não acho relevante).

questionAnswers(4)

yourAnswerToTheQuestion