The problem is that you’re specifying _how_ the view is supposed to behave, which kinda contradicts…
Eric Palle
1

You don’t have and android related import on the Presenter. The instead of the presenter interface having a method onButtonClicked(), you’ll have on the view interface a Observable<Void> buttonClicks(). At no point whatsoever the presenter depends on a Android package. As Ferhat Parmak said, the presenter does not know at all how the events on the observable are generated, making it very easy to mock the view, allowing for very easy unit testing.