问题标签 [okio]

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 回答
2732 浏览

android - 无法在“Android L”模拟器上使用 OkHttp 运行应用程序

我们的应用程序使用最新版本的 OkHttp (2.0.0) + Okio (1.0.0) + Picasso (2.3.2),我想在新的“Android L”模拟器(英特尔)上试用它,它被安装了,但是当加载应用程序我得到这个:

它来自使用Picasso.with(Context)创建 Picasso 对象。请注意,相同的代码,没有任何更改,在以前的模拟器 4.4.2 (Intel) 上效果很好。

我不明白这个('okio.Okio' 的声明出现在 /system/framework/okhttp.jar 中)来自哪里。

更新

我正在将 Eclipse Luna 与最新的 Android SDK 工具一起使用。我还尝试在 Order/Export 中选择 OkHttp jar,但错误仍然存​​在。

我使用了 DDMS 文件资源管理器,在模拟器的路径/system/framework/okhttp.jar中找到了一个 okhttp.jar(309 字节)。也许这是导致问题的原因,但它为什么不查找我自己在 APK 中提供的 okhttp.jar?

我暂时将引用的“okhttp.jar”文件上传到此链接:http ://www.filedropper.com/okhttp

0 投票
3 回答
7949 浏览

android - Okhttp NoClassDefFoundError

我在 Eclipse 上的 android 应用程序中使用 OkHttp 2.0.0 jar。由于 OkHttp 现在依赖于 Okio 库,我还在我的项目中添加了 Okio 1.0.0 jar。该项目编译良好,没有编译错误,但是当我在我的 android 设备上运行时,它给了我NoClassDefFoundError与 OkHttp 库类相关的所有内容。

我已将所有 jar 放在项目的 libs 文件夹中,并将它们添加到我的构建路径中,并尝试在“导出和订购”选项卡中检查它们,但它仍然无法正常工作。

我想知道,因为 okhttp 依赖于 okio,只添加两个 jar 就可以正常工作,或者我必须做任何不同的事情。

我也尝试过 volley jar,它工作正常,没有任何问题。任何人都可以在这里帮助我,这个问题现在存在 3 到 4 天。

更新 我还尝试了 android studio 并在构建依赖项中添加了 okhttp 库,但仍然无法正常工作。

0 投票
3 回答
22769 浏览

android - 如何在从站点下载和解析 XML 文件时一起使用 Retrofit 和 SimpleXML?

我刚开始使用 Retrofit。我正在开发一个使用 SimpleXML 的项目。谁能给我一个例子,从一个站点例如http://www.w3schools.com/xml/simple.xml获取一个 XML并读出来?

0 投票
2 回答
2427 浏览

android - 使用 okhttp 打开连接

我正在尝试使用 okhttp 打开连接。

就像是,

不适用于新的 ok-http.jar 文件

它正在与1.5.x of okhttp version

有什么建议么?

谢谢

0 投票
5 回答
22341 浏览

android - 使用 OKHTTP 跟踪分段文件上传的进度

我正在尝试实现一个进度条来指示多部分文件上传的进度。

我已阅读对此答案的评论 - https://stackoverflow.com/a/24285633/1022454我必须包装传递给 RequestBody 的接收器并提供一个跟踪移动字节的回调。

我创建了一个自定义 RequestBody 并用 CustomSink 类包装了接收器,但是通过调试我可以看到字节正在由RealBufferedSink ln 44 写入,并且自定义接收器写入方法只运行一次,不允许我跟踪移动的字节.

有没有人有我将如何去做的例子?

0 投票
1 回答
4414 浏览

java - 为什么我一次只能从 okhttp.Response InputStream 读取 2048 个字节?

我正在使用 OkHttp GET 请求下载文件:

我从响应正文中读取并用 装饰它,BufferedInputStream缓冲区大小为 4096:

但是,当我尝试从缓冲区读取时,第一次读取返回 1179 个字节。之后,我一次只能读取 2048 个字节:

几个相关问题:

  1. 什么可能导致第一次读取返回 1179 字节?某种文件头?
  2. 为什么从被分页读取InputStream的大小为 2048 字节,而不是BufferedInputStream包装器指定的值?
  3. 有没有办法配置OkHttpClient从缓冲区读取超过 2048 个字节?
0 投票
2 回答
11115 浏览

android - Handling Authentication in Okhttp

I'm using OkHttp 2.3 with basic authentication requests, according to OKHttp docs, it automatically retries unauthenticated requests, but whenever I provide invalid credentials, the request takes too much time and I get this exception in the end:

java.net.ProtocolException: Too many follow-up requests: 21

How can I prevent OkHttp from automatically retrying unauthenticated requests, and return 401 Unauthorized instead?

0 投票
1 回答
6558 浏览

android - 使用 OkHttp、Okio 和 RxJava 下载文件

我正在尝试使用 OkHttp 下载文件并使用 Okio 写入磁盘。我还为这个过程创建了一个可观察的 rx。它正在工作,但是它明显比我以前使用的(Koush 的 Ion 库)慢。

以下是我创建可观察对象的方法:

有谁知道是什么原因导致速度变慢,或者我是否错误地使用了运算符?

0 投票
2 回答
7005 浏览

android - 关于 Square 的 Okio 库参考的 Android-Studio-1.2.RC Proguard 警告

使用 Android Studio:1.2.RC

我在 .gradle 中启用了 proguard:```

and added these rules to my proguard-rules.pro:

and added these lint rules to my .gradle file:

```

但是当我尝试在调试模式下运行应用程序时,我仍然收到这些警告:

```

太奇怪了,因为我还将这些规则/选项添加到了依赖于 OkHttp/Picasso 的所有库模块中,我不知道哪里出了问题,也许这是一个 Android Studio 错误?有人对这个问题有任何线索吗?

我在 github 上打开了一个问题。

0 投票
2 回答
13374 浏览

android - 在 Android 中使用 RxJava、OkHttp 和 Okio 下载进度

在我们的应用程序中,我使用此代码下载了一个图像文件。我需要在 UI 上显示下载进度(下载的字节数百分比)。如何在此代码中获取下载进度?我搜索了解决方案,但仍然无法独自完成。