Articles of roboguice

适用于Android /移动设备的最佳IOC容器

我需要帮助决定哪个IOC容器最适合在移动设备上开发(android)。 我需要的是没有太多开销的基本IOC。 Spring是一个非常好的框架,但它对于移动设备来说太过分了。

使用Guice for Android是否有意义

我在一个非常复杂且具有很多业务逻辑的android项目中使用guice进行辩论。 Guice似乎很合适,但每当我开始深入阅读它时,它开始看起来比它需要的更复杂。 我不明白的一件事是:如果Guice是如此伟大并且是编写java代码的最佳方式,那么为什么使用Guice的Android代码如此之少……为什么Google不在内部使用guice来安装Android?

在Proguard中保留注释类

我有很多类使用像@Singleton这样的注释 @Singleton public class ImageCache 我想保留。 如何配置proguard -keep语句,以便它适用于具有该注释的所有类。 顺便说一下上下文我在Android上使用Roboguice的应用需要这个,这就是我添加标签的原因。 可能会帮助别人。

Android – build立Roboguice 2.0?

我开始了一个新的项目(在Eclipse经典),添加roboguice-2.0.jar guice-2.0-no-aop.jar和jsr305-1.3.9.jar到我的项目和我的构buildpath。 第一步是扩展RoboApplication,但是eclipse找不到这个类的匹配包。 我查看了roboguice的源代码和包,它是不存在的roboguice.application.RoboApplication 。 在我的项目中没有roboguice下的应用程序。 我错过了什么?

Robolectric + PowerMock + Mockito不工作

我正在努力获得这个罕见的组合作品,但我没有运气。 我的项目使用JUnit + Mockito + Robolectric进行testing,并使用Roboguice进行注入,当我将PowerMock添加到等式中时发生了奇怪的事情,这是我尝试过的一些事情: 1.开箱即用的PowerMock + Mockito + Robolectic集成。 正如在PowerMockIngration上所build议的那样,我添加了一个@PowerMockRunnerDelegate来包含从RobolectricGradleTestRunner扩展的自定义RobolectricGradleTestRunner : 的build.gradle testCompile 'org.powermock:powermock-module-junit4:1.6.4' testCompile 'org.powermock:powermock-api-mockito:1.6.4' testing @RunWith(PowerMockRunner.class) @PowerMockRunnerDelegate(MyCustomRunner.class) @Config(constants = BuildConfig.class) @PowerMockIgnore({"org.mockito.*", "org.robolectric.*", "android.*"}) @PrepareForTest(RoboGuice.class) public class Test { @Before public void setUp() throws Exception { PowerMockito.mockStatic(RoboGuice.class); …. } 结果: java.lang.IllegalArgumentException: Cannot subclass final class class roboguice.RoboGuice at org.mockito.cglib.proxy.Enhancer.generateClass(Enhancer.java:447) at org.mockito.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:25) at […]

注入视图(Roboguice)不能处理多个布局

所以我对这个Activity有不同的布局。 而且我有不同的课程,每个课程都可以打开,并使用布局进行操作。 我通过@Inject将这些类注入到活动中。 这一切都没有问题。 但是,当我尝试使用@InjectView在一个非活动布局的控件之一,我得到一个错误。 11-02 19:17:31.086:错误/ AndroidRuntime(1326):导致:java.lang.NullPointerException:不能注入null值到类be.baes.notes.View.EditNoteImpl.saveButton当字段不是@Nullable 这将是代码。 public class EditNoteImpl implements EditNote { @Inject CancelEditNoteClickListener cancelEditNoteClickListener; @Inject SaveNoteClickListener saveNoteClickListener; @Inject Provider<Activity> activity; @InjectView(R.id.saveButton) Button saveButton; /* (non-Javadoc) * @see be.baes.notes.EditNote#activateEditNote() */ @Override public void activateEditNote() { activity.get().setContentView(R.layout.editnote); this.saveButton.setOnClickListener(saveNoteClickListener); } } 我可以做到这一点。 public class EditNoteImpl implements EditNote { @Inject CancelEditNoteClickListener cancelEditNoteClickListener; @Inject SaveNoteClickListener saveNoteClickListener; […]

是什么让Guice无法在Android上运行,除了Guice-no-aop?

我在Guice的下载页面上看到一个名为guice-no-aop的模块,其目的显然是针对Android开发者的营销。 一些在线search使像RoboGuice这样的库看起来像是在执行类似的基于AOP的IoC,几篇文章甚至给出了很好的代码示例。 但我的问题是:为什么Guice在没有这些特殊库的Android应用上运行? 我期待在Guice的网站/ wiki上find一些东西,但令我惊讶的是,找不到任何理由。 有人知道吗? 编辑 这个问题的辅助是一个更广泛的问题: 还有哪些Java框架不能在Android上运行?!? (什么是经验法则?)

Android的ORMLite:绑定与Roboguice的DAO

我只是试图用ORMLite设置我的Android项目。 我正在使用Roboguice进行DI。 现在我的问题是,这里有没有人可以帮助他们一起工作。 我已经设置了我的助手类扩展OrmLiteSqliteOpenHelper 。 现在我想知道如何注入正确的DAO类。 一般的最佳做法是太棒了。 由于使用OrmLiteBaseActivity不应该真的适用,因为这应该由Roboguice处理。 问题只是:如何? 我非常感谢您的帮助,您的经验,最佳实践等。

roboblender-3.0.1.jar:不包含在Android:javax.tools中。 引用来自com.google.inject.blender.AnnotationDatabaseGenerator

我试图build立我的android项目,我得到: Information:Gradle: Executing tasks: [clean, :app:compileDebugSources] Information:1/10/15, 11:13 AM – Compilation completed successfully in 5 sec 然后我尝试将其部署到我的设备,并得到: FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':app:lint'. > Lint found errors in the project; aborting build. Fix the issues identified by lint, or add the following to your build script […]

Android Roboguice proguard警告

我似乎无法编译没有警告。 这是警告: Warning:roboguice.activity.RoboMapActivity: can't find superclass or interface com.google.android.maps.MapActivity Warning:roboguice.activity.RoboSherlockActivity: can't find superclass or interface com.actionbarsherlock.app.SherlockActivity Warning:roboguice.activity.RoboSherlockFragmentActivity: can't find superclass or interface com.actionbarsherlock.app.SherlockFragmentActivity Warning:roboguice.activity.RoboSherlockListActivity: can't find superclass or interface com.actionbarsherlock.app.SherlockListActivity Warning:roboguice.activity.RoboSherlockPreferenceActivity: can't find superclass or interface com.actionbarsherlock.app.SherlockPreferenceActivity Warning:roboguice.activity.SherlockAccountAuthenticatorActivity: can't find superclass or interface com.actionbarsherlock.app.SherlockActivity Warning:roboguice.fragment.RoboSherlockDialogFragment: can't find superclass or interface com.actionbarsherlock.app.SherlockDialogFragment Warning:roboguice.fragment.RoboSherlockFragment: can't find superclass […]