To fix the memory leak issue , you can do this only one time (after the first time view is created) and just keep a state after that. (you do not need to actually subscribe to the observable since your presenter/whatever is not destroyed on rotation.