问题标签 [okhttp]

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.

0 投票
1 回答
1079 浏览

android - 防止 Picasso 获取已加载的图像,无法使用 OkHttp2.0 进行磁盘缓存

以上两者是相关的。以下是我的情况

  1. 我正在使用 Volley 库
  2. Picasso(2.3.2) 加载图片
  3. 图像相当大,所以我将它们调整为 300x300 的尺寸
  4. 但在 ListView/GridView 滚动期间,图像会再次重新加载。尽管重新加载时间相当短,但我不希望这种性质的重新加载。

所以浏览,网上我遇到了以下

  1. 使用 OkHttpClient 缓存机制

    如何使用毕加索库实现我自己的磁盘缓存 - Android?

  2. 所以我尝试在 Volley Library 中使用 OkHttp 2.0.0

    https://gist.github.com/JakeWharton/5616899

    我认为,从 OkHttp 2.0.0 开始,上述要点有一些需要改变的地方。所以我改为遵循这个

    如何使用 OkHttp 2.0 实现 Android Volley?

  3. 但是 Volley 库现在无法使用方法 2 运行。最后,我正在尝试使用上面提到的缓存

    https://gist.github.com/ceram1/8254f7a68d81172c1669

所以,我的问题很简单,如何不重新加载已经下载的图像。如果,我必须使用 OkHttp 2.0.0 进行磁盘缓存,我应该遵循哪些方法。

0 投票
3 回答
5839 浏览

android - 毕加索不加载图像

我使用 Picasso 已经有一段时间了,但我不得不将 OkHttp 库升级到 2.0.0,因此,我不得不将 Picasso 升级到 2.3.2 版本。

然而,现在毕加索根本不加载任何图像,图像视图是空的。任何时候都没有出现错误,但是当我打开 Picasso 登录时,“Hunter”似乎已被调度并开始执行,但从未完成。

所有图像都可以访问且相当小(大约 200 像素 x 100 像素)。

我正在通过毕加索的“典型”方法加载图像:

但是,errorimg从未显示。

我可能做错了什么?

编辑:

这是毕加索不起作用的地方之一的代码(PlaceListAdapter.java - getView 函数)

0 投票
2 回答
7119 浏览

android - 改造 + OkHttp + GZIP-ed JSON

我是 Retrofit 的新手,但它看起来真的很强大。使用普通的 JSON 一切正常,但只要我尝试 GZIPed 的,我就会收到一个错误:

I/System.out(14883): ------retrofit.RetrofitError: retrofit.converter.ConversionException: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: 预期 BEGIN_OBJECT 但在第 1 行第 1 列是 STRING

显然,我在日志中看到的乱码无法解析为 JSON。

我认为 okHttp 是正确地捕捉 gzip 的东西吗?我错过了什么?

这些罐子在我的 libs 文件夹中:

这样我开始通话:

-line 从未显示result:,但我T�� �����=�Mk�A�G�4.��@��A��在 RetrofitLog 中看到了很多这些东西。gzip没有解压缩我做错了什么?谢谢!

编辑:

我在我的测试服务器server.com/ovl.gzserver2.com/api.php?id=ovlgzip结果相同,但标题不同:

测试服务器:

原服务器:

0 投票
1 回答
1150 浏览

java - 毕加索自定义下载器问题

我需要从需要标头身份验证的 api 中检索图像。我正在为毕加索指定一个自定义下载器,但图像永远不会显示。我是否正确覆盖了 openConnection 方法?

0 投票
3 回答
10717 浏览

java - bug retrofit.RetrofitError: java.io.EOFException for Android

我搜索了很多,我发现了一些这样的解决方案:

我尝试了它们,但对我没有用。我怎样才能纠正这个错误?这是我的日志:

感谢您的回复

0 投票
2 回答
9051 浏览

java - 使用 Square 最新 jar 的问题 - 改造、okhttp、okio 和 okhttp-urlconnection

我为我正在开发的一个功能引入了以下 Square jars:

  • okttp-2.0.0
  • okhttp-urlconnection-2.0.0.jar
  • okio-1.0.0.jar
  • 改造-1.6.1.jar

我从中央 maven repo 下载了这些。

在本地一切正常,我将代码提交给 svn。我们有一个 Jenkins CI 服务器来生成我们的调试和发布版本。这失败了。

我的本地环境和 Jenkins 有很多不同之处:

  • 在本地我运行 java 8,Jenkins 运行 java 6
  • 在本地我只生成调试版本,Jenkins 生成调试和发布版本
  • 在本地我有构建工具版本 22.6.2,Jenkins 运行 18.0.1

这些是我在 Jenkins 日志中看到的问题:

即使在 Jenkins 上,调试版本也说它通过了,但发布版本失败了。问题只是Proguard吗?

我确实找到了一些设置,我当前的 proguard 文件有以下关于库的指令:

有这么多差异,我正试图找到可能的罪魁祸首!任何想法从哪里开始?如果我可以只做 proguard 更改,我不愿意更改 jenkins 上的配置。

0 投票
2 回答
14070 浏览

android - 如何在改造中处理分页

我正在使用改造构建一个应用程序。一切都很顺利,但我担心我的 API 请求的大小,并希望使用分页将它们分开。

使用 Retrofit 自动浏览 API 的最佳策略是什么,以便默认下载所有可用数据?

0 投票
1 回答
835 浏览

android - 刷新以前的改造响应

在我的 Android 应用程序中,我需要从 XML API 下载一些文件的元数据。我正在使用 RetroFit 来处理我作为异步请求实现的请求,在回调中我解析 XML 并将我需要的数据保存在文件中。

当我需要获取许多文件的信息时,我OutOfMemoryError使用 MAT 获取并分析堆,我发现以前响应的 XML 正文仍然存在。有没有办法强制应用程序刷新已经使用的 XML?

0 投票
9 回答
32928 浏览

android - OkHttp - 启用日志

我使用 Retrofit 来进行 HTTP 请求和 JSON 解析,我喜欢打开调试日志的方式。日志允许查看正文请求、URL……这非常有用。由于改造使用 OkHttp,我想知道 OkHttp 是否也有办法为每个请求启用日志。

0 投票
1 回答
47 浏览

okhttp - OkHttp 中的“HTTP”URI(HTTP 升级机制)支持

据我了解,这在 OkHttp 2.0 中不受支持。到目前为止,我已经尝试过没有运气...

是否有计划在不久的将来支持这一点?