Tag: roboguice

使用dependency injection与Roboguice?

我正在开发一个Android项目,我想知道什么是build立一个Android应用程序的好架构的build议。 我想使用Roboguice的dependency injection,我一直在阅读有关MVVM模式或MVC模式( Android MVVMdevise模式示例 )。 另外我知道roboguice有一个非常酷的基于Context的事件的提升和处理function,可以非常容易testing,因为代码是分离的。 任何关于工作devise模式的build议? 一个可testing和可扩展的架构,你曾经或开发?

在使用Robolectric + Roboguice时,日志输出写入哪里?

我正在使用Robolectric来testingAndroid。 我正在通过maven运行我的testing,例如 mvn -Dtest=LogTest test 如果我有写入日志的代码,例如 Log.d("TAG", "blah"); 或者使用Roboguice的Ln Ln.d("blah"); 我在maven的surefire日志(文本文件)中看不到任何输出。 理想情况下,我真的想要简单的日志语句去控制台。 我可以通过使用System.out.println("blah")写入控制台,但当然我宁愿使用支持的日志API。 所以我的问题是,为什么我根本没有看到日志输出,以及如何获取日志消息写入控制台?

如果在任何模块中存在模拟实例,则在创buildRoboGuice注入器时进程崩溃

我在unit testing中使用RoboGuice和AndroidMock框架存在问题。 我创build了一个简单的项目来显示我的问题。 在这里,我创build了一个模拟实例,并在RoboGuice中注册它。 但是进程在“setUp()”和“test01()”方法之间崩溃。 据我猜测,实际上当Injector被创build时,如果任何模块里面有一个模拟的实例,进程崩溃。 如果我用一个实现接口的类的实例replace模拟实例,那么一切正常。 有谁知道如何解决这个问题? 这是我的testing代码: public class testInjectMock extends RoboUnitTestCase<MyApplication> { protected void setUp() throws Exception { InterfaceToMock instance = AndroidMock.createNiceMock(InterfaceToMock.class); AndroidMock.expect(instance.SimpleMethod()).andStubReturn("Hello!"); MyModule myMockModule = new MyModule(); myMockModule.setMockedInstance(instance);//Comment this string to get into the test01() method MyApplication.setMyModule(myMockModule); super.setUp(); } public void test01() { //It never comes here } } 模块源代码: public […]