大概的思想非常简单,就是将activity做thin,通过提供Presenter与业务逻辑洽接。
这样,所有的业务逻辑都可以用普通的Java测试来完成。
使用场景:业务逻辑多数与android环境无关联(比如涉及到访问权限这些,当然少量的访问可以通过文中所述的方法,定义出抽象的接口来绕过去)。
这种方法也有缺点,那就是整个代码表现不是那么直接(对于小的应用,这么做,似乎会有点小题大做)。不过,为了让代码获得更好的testability,这样做,对于大工程绝对利大于弊。