问题标签 [roboguice]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 将 VPI 添加到具有大量依赖项的项目会导致 3.0 之前的设备出现错误
我最近从 eclipse 切换到了 intellij,到目前为止,这是一次很棒的体验,我真的很喜欢它。但是,我遇到了一个奇怪的问题,我一直在用头撞墙。我正在尝试在我的应用程序中使用 ViewPagerIndicator、ActionBarSherlock、RoboSherlock 和 RoboGuice 以及其他一些常见框架。在我添加 VPI 之前一切正常。
基本上,当将 ViewPagerIndicator 依赖项添加到我的项目时,它会破坏 3.0 之前的设备的应用程序(在 3.0+ 上运行良好)。
该错误相当令人困惑,因为当 VPI apklib 存在时,似乎与 ABS 兼容主题没有被拾取(请注意,我在清单中使用的是 ABS 兼容主题)。
当我更深入地查看跟踪时,我看到了以下内容(即使我使用的是 sherlock 主题):
请参阅完整的异常堆栈跟踪和活动/清单/pom.xml 代码@https ://gist.github.com/3743646。
再一次 - 当添加 VPI 项目作为 Maven 依赖项时,这只发生在 3.0 之前的设备上。如果我删除 VPI - 该应用程序在 2.2+ 设备上运行良好。
据我所知,我的 Pom.xml 几乎与 Android Bootstrap 应用程序完全一样,它在 2.2+ 上运行良好。
我的猜测是我有某种依赖配置问题。我对 maven 和 intellij 非常熟悉,所以很难解决问题。
我不确定是否有其他人看到过这种行为,或者我是否犯了新手错误。任何帮助表示赞赏 - 如果我解决了这个问题,我会用答案更新这个问题。
提前感谢大家,如果我在这篇文章中违反了任何 stackoverflow 礼节,我们深表歉意。
编辑:发现潜在的相关问题@ http://youtrack.jetbrains.com/issue/IDEA-90719
android - 如何在 Roboguice 中使用上下文单例
我@ContextSingleton
用来标记依赖于上下文注入的单例。然而,从 RoboGuice 源代码和我自己的测试来看,似乎它在Application
上下文和不同的活动上下文之间产生了差异。这是完全有道理的,只是当我将它与这样的事件管理工具一起使用时——至少对我来说——有问题:
尽管该服务被定义为单例,但似乎在它第一次注入某处之前似乎没有创建它的实例,显然是通过延迟加载。因此,触发 aMyEvent
不会使侦听器调用。我们当时认为我们可以在我们的应用程序中“手动”预先加载类,例如
并因此注册侦听器,但这仅在 Activity 中执行时才能正常工作,该Activity 后来也注入EventManager
来触发事件,但不是应用程序。
所以,在一个理想的世界里,我希望我可以告诉RoboGuice 它应该将单例绑定到哪个上下文,就像这样
但显然这是不可能的。
我错过了什么?
android - 屏幕方向更改时的 RoboService 异常
嗨,
我有一个活动绑定/取消绑定到OnStart()/OnStop()
. 如果我在水平握住手机的同时打开列表中的链接(在浏览器中打开),应用程序会崩溃。
我想提一下,该活动在清单中被限制为纵向模式,并且是singleTop
.
我收到以下错误:
我注意到,如果在方向改变时服务仍然绑定,那么应用程序就会崩溃。
我的问题:
- RoboGuice 2.0 中是否存在错误或者我只是使用错误?
- 有没有办法在方向改变之前取消绑定服务?
- 如果对于另一个活动我有绑定/解除绑定,
OnCreate()/OnDestroy()
并且我想保留该绑定直到活动被破坏,在这些情况下我该怎么做?
android - Android,删除 RoboGuice 帮助需要替换 getInjector().getInstance
我正在开发第三方应用程序,我需要删除 RoboGuice,我需要知道我需要做什么才能用 android 代码替换各种 getInjector 方法在我有的活动中
这只是设置 Helper 类的实例并在活动的 onCreate 中初始化它的情况吗?
我还需要知道如何/我需要做什么来更换
android - Roboguice 在 JUnit 测试中不起作用
我正在尝试使用使用 roboguice 的类编写一些测试。不幸的是,guice 似乎根本没有注入任何东西。
我的设置是这样的...
- 我正在使用 Intellij
- 我有 2 个 intellij 模块(1 个用于代码,1 个用于测试)
- 我有 2 个单独的模块类,它们扩展了定义绑定的 AbstractModule(roboguice 类)
- 我有 2 个 roboguice.xml 文件指向这样的包...
这个设置看起来正确吗?任何注入的类目前都是空的
android - 解决循环依赖 RoboGuice
我的应用程序中似乎存在循环依赖问题。我已经测试了所有类并且它们运行良好,但是在运行我的应用程序时我无法实例化它们。
问题的根源在这个类
这个类提供了 httpClient 并添加了一个拦截器。拦截器看起来像这个提供者被用来为这个类提供 httpclient
问题出现是因为 httpResponseInterceptor 还使用 ServerCommunicator 类在用户未经过身份验证时向服务器发送请求。
如何解决这个问题?
android - RoboGuice2.0 ArrayIndexOutOfBoundsException
当我使用 RoboGuice2.0 注入一些模块时,我得到一个像这样的 ArrayIndexOutOfBoundsException
我像这样使用了 setBaseApplicationInjector。
很可能是 RoboGuice2.0 源代码中我在 List 中添加内容时发生的。但是在使用 list.add 方法时似乎不可能抛出 ArrayIndexOutOfBoundsException。我想知道我的用法是否正确以及解决此问题的方法。
android - RoboGuice 2.0 和 Robolectric 1.1 测试 RoboAsyncTask
我目前在我的 Android 应用程序中同时使用 RoboGuice 2.0 和 Robolectric 1.1。我注意到 RoboLooperThread 在 2.0 中消失了,我在调用任何 RoboAsyncTask 时遇到了困难。当主测试线程调用.execute()
时RoboAsyncTask
,永远不会调用 RoboAsyncTask 的call()
方法。我的问题是如何强制测试线程来回切换 UI 线程,以便执行任务?
谢谢,
文斯
android - Android 原生片段 vs roboguice 支持 v4 库片段
我有一个 XML 布局文件,它由一个 Activity 膨胀
Activity 是 FragmentActivity(来自 v4 库)的子类(不是直接的)。
现在,在 com.xyz.fragments.TabFragment 中,我有以下类声明
运行时,应用程序崩溃,adb logcat 显示如下错误:
所以第 22 行正是 xml 布局中的这一行
它带有红色下划线......它说 TabFragment 不能分配给 android.app.fragment
好吧,我明白了,我正在使用来自支持库 v4 的 roboguice 的 FragmentList,与 android.app.fragment 不同
所以……我该怎么办?我假设这就是应用程序崩溃的原因。
下面的完整堆栈跟踪
0-25 20:59:54.535:INFO/ApplicationPolicy(1903):isApplicationInstallationEnabled:pkg com.xyz 10-25 20:59:55.455:INFO/PackageManager(1903):删除非系统包:com.xyz 10-25 20:59:55.455:INFO/ActivityManager(1903):强制停止包 com.xyz uid=10017 10-25 20:59:55.610:INFO/PackageManager(1903):ICS_DEBUG scanPackageLI 进入 com.xyz 10-25 20:59 :55.610:INFO/PackageManager(1903):ICS_DEBUG 检查 com.xyz 10-25 20:59:55.615:INFO/PackageManager(1903):在 com.xyz 10-25 20:59:58.390 上运行 dexopt:INFO/ ActivityManager(1903): 强制停止包 com.xyz uid=10017 10-25 20:59:59.305: DEBUG/PackageManager(1903): 新包安装在 /data/app/com.xyz-2.apk 10-25 20 :59:59.705:INFO / ActivityManager(1903):强制停止包com.xyz uid = 10017 10-25 20:59:59.875:DEBUG / Launcher.LauncherModel(2152):->包:com。xyz 10-25 21:00:00.050: INFO/SocialHub(6289): [UinboxReceiver] onReceive() >> intent.getData(): com.xyz 10-25 21:00:00.345: DEBUG/Launcher.LauncherModel(2152 ): --> 更新包 com.xyz 10-25 21:00:00.345: DEBUG/Launcher.LauncherModel(2152): --> 包:com.xyz 10-25 21:00:00.640: INFO/DebugDb(2152 ): 更新应用信息 -1 com.sec.android.app.twlauncher.ApplicationInfo xyz -1 4 15 75|-1|-1|-1|-1|0 com.sec.android.app.twlauncher.ApplicationInfo@ 421323f0 10-25 21:00:01.675:INFO/ActivityManager(1903):从 PID 7524 10-25 21:00:01.775 开始 {flg=0x10000000 cmp=com.xyz/.TabActivity}:INFO/ActivityManager(1903):为活动 com.xyz/.TabActivity 启动 proc com.xyz:pid=7536 uid=10017 gids={3003} java.lang.RuntimeException:无法启动活动 ComponentInfo{com.xyz/com.xyz.TabActivity}:android。视图.InflateException:二进制 XML 文件第 22 行:在 com.xyz.TabActivity.onCreate(TabActivity.java:25) 10-25 21:00:24.225:INFO/ActivityManager(1903):处理 com.xyz (pid 7536) 时出错已经死了。
android - Android Roboguice 扩展 Robo 类的目的是什么?
我是 roboguice 的新手,我一直在查看他们的文档,我知道是的,而不是说
但是扩展它们的类的目的是什么,例如 RoboAcitivy 或 RoboFragment 等?我的意思是这样做有什么好处?我还是没看到。
请你好