- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在创建一个使用 RoboSpice 进行异步网络调用的 Android 应用程序。虽然我没有使用 RoboSpice 的经验,但我还是选择了 RoboSpice,因为它被认为是互联网上最好的之一,而且它可以自动将 JSON 转换为 POJO。不幸的是,RoboSpice 的文档质量有点差。因此我的问题:
我已成功使用 RoboSpice 对 REST GET 方法进行网络调用,自动将 JSON 解析为 POJO,并在 Android ViewPager 中显示检索到的对象列表。我正在使用 Jackson2GoogleHttpClientSpiceService 来执行此操作。现在,在这个 ViewPager 中,我也显示了一张图片。显然,我想使用 RoboSpice 下载此图像。我用过其中一个 RoboSpice examples (它使用 OkHttpBitmapSpiceManager 下载图像)作为指南,并据此将这一行添加到我的 Activity 中:
private OkHttpBitmapSpiceManager spiceManagerBinary = new OkHttpBitmapSpiceManager();
此外,我已将此行添加到 list 中:
<service
android:name="com.octo.android.robospice.spicelist.okhttp.OkHttpBitmapSpiceService"
android:exported="false" />
现在,由于我没有为我的 Android 项目使用 maven,我必须将以下 jar 添加到我的项目中:robospice-ui-spicelist-1.4.9.jar(我已经显然添加了使用 Jackson2GoogleHttpClientSpiceService 所需的所有其他 jar,这很有效。
问题是,应用程序甚至无法启动。每当我删除(或注释)包含 new OkHttpBitmapSpiceManager()
的行时,应用程序都可以完美运行。所以显然调用构造函数是导致应用程序崩溃的原因。我从 logcat 中收到以下错误:
java.lang.NoClassDefFoundError: com.octo.android.robospice.spicelist.okhttp.OkHttpBitmapSpiceService
对我来说,这个错误似乎与丢失的 jar 或其他东西有关。但是我已经根据文档添加了所有必要的 jar。有 RoboSpice 经验的人可以向我解释我在这里做错了什么吗?我应该添加更多 jar 还是我遗漏了其他东西?或者我什至应该使用一种完全不同的方法来使用 RoboSpice 从 URL 加载图像?
编辑!
为了更清楚,我将以下 jar 添加到我的 libs 文件夹和构建路径中:
最佳答案
问题是您没有使用包含服务类的 jar:com.octo.android.robospice.spicelist.okhttp.OkHttpBitmapSpiceService
。
它不包含在 robospice-ui-spice-list 中,而是包含在 robospice-okhttp 中.如果包含此 jar,您将获得所需的服务。
看看this sample .
此外,请不要下载图片,使用非 okhttp 相关类会更容易。 RS 在 its core package 中提供简单的二进制请求.
哦,顺便说一句,当您说“RS 文档有点差”时,请立即通过 github 或邮件列表告诉我们您希望它如何更完整。我们也接受拉取请求,即使只是文档。
关于android - 使用 RoboSpice 的 OkHttpBitmapSpiceManager 从 URL 加载图像时出现 NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19894869/
如何同步执行 RoboSpice 请求?是否可以?我想在 IntentService 中使用 RoboSpice。 编辑: 有时需要同步执行一些东西,例如在服务中。在我最近的项目中,我必须对一些不同类
当我尝试运行 Robospice Retrofit 示例代码时,出现此错误。 java.lang.RuntimeException: Impossible to start SpiceManager
出于某种原因,从 Robospice 的缓存中拉回缓存对象始终为空。我做错了什么吗? getSpiceManager().execute(cardRequest, Card.class.getName
只要我停留在同一个 fragment 中,缓存就可以正常工作。但是,一旦我将应用程序切换到后台,然后在 onResume() 上重新加载数据,缓存就不再有效,并且建立了网络连接。 这是我的代码: pr
我计划使用 RoboSpice + OrmLite 进行数据缓存,我希望我的应用程序可以离线工作并使用缓存的数据。我是 RoboSpice 的新手。 我想实现以下案例:如果用户有互联网连接,则每次从服
我有一个这样的 JSON: {"meta": {...}, "objects": [{...}, {...}]} 但问题是如何构造POJO类。示例中只有一个使用简单 JSON 的示例。 我试过这样的:
我是 RoboSpice 的新手.我正在尝试上传文件。但是我得到了这个错误: 04-02 17:47:31.151: E//RequestProcessor.java:234(11021): org
看看LruCacheObjectPersister.java ,这是一个基于 Android LRUCache 的内存中对象持久化器。我想扩展这个基类以在内存中缓存字符串或位图旁边的任何 pojos
我们使用带有 okhttp 的 Robospice 1.4.12。除了在用户点击主页按钮然后返回 Activity 时从请求中获取结果外,一切正常。 示例:我们发出一个请求,然后按下主页按钮,我们等待
我开始将 robospice 用于必须在连接性不断变化的地区运行的应用程序。 我如何实现 robospice 在网络中断时自动返回缓存数据? 谢谢本 最佳答案 我根本没有使用过 Robospice。但
有人可以告诉我如何在我的“RequestResult.java”中使用 RoboSpice 进行动态映射吗? 我的 JSON 看起来像这样: "result": [ { "attr
我已经成功地创建了一个 Retrofit API Rest 客户端进行 GET 和 POST 调用,并将其合并到 Robospice 作为后台服务。 但是,我希望 Robospice 服务连接到数据库
我正在尝试使用这个 robospice-retofit example 进行一些单元测试.问题是当我调用 loadDataFromNetwork() 方法时出现一些 NullPointerExcept
我设法实现了 robospice (GoogleHttpClientSpiceService) 示例,它可以正常工作 - 它成功地转到服务器,获取数据并将其存储在缓存中。如果 Activity 未处于
我正在尝试使用以下库来开发我的应用程序。 Robospice Gson 和 Spring for android 为此,在我的 gradle 文件中,我添加了以下依赖项 compile 'com.oc
我将 Robospice 与 Retrofit ans ORMLite 模块一起使用。改造部分工作良好。我有用于改造的城市模型: 城市.java: public class City { pu
我在 robospice 中使用 spring android。我需要用 get 请求放置 header ,所以我使用了 exchange() 方法。代码没有错误但没有获取任何东西 public ML
如何检查 robospice 是否加载了一些任务?有方法 void addListenerIfPending()。如果该方法返回 bool 值以检查我是否应该在重新创建后将 Activity 中的进度
我不想达到下一个目标。 取决于json 内容desside put 或不将数据放入Robospice Cache。有时从服务器返回的数据无效。例如,我们的授权 token 关闭时间。所以我们不应该缓存
我正在使用 Robospice 来管理我的 API,我想在我的登录屏幕上实现一项功能,该功能允许更改将在我的应用程序中使用的服务器 URL。 在这个登录屏幕 Activity 中,我有不同的 edit
我是一名优秀的程序员,十分优秀!