问题标签 [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.
android - 使用 OkHttp3 取消下载文件
我想用 Okio 取消下载的文件,它在 AsyncTaks中运行
java - 如何在写入过程中出现异常回滚/恢复 IO 操作?- 爪哇
如果在写入过程中出现任何异常,是否可以回滚当前的 IO 操作?我正在尝试使用以下表达式将 UTF-8 字符串写入带有 Okio 库的文件
它适用于正常情况。但是如果在写入过程中发生异常,它只是将一个空字符串写入一个文件,覆盖现有的文件。
我知道我可以在写入之前备份旧内容,并在出现异常时覆盖在 catch 块中。但这看起来是一个常见问题,我想知道是否有任何替代解决方案可以解决这个问题。
谢谢!
java - 如何使用 Okio 正确地分块读取文件?
我正在尝试使用文件上传 API,该 API 需要以字节大小的块上传文件,该字节大小是从先前的 API 调用中指定的。所以....例如,如果文件很小,它会说以 1MB(以字节为单位)的块上传它,但它很大,它可能会说以 10MB 块上传它,如果它真的很小,它可能会简单地返回给我文件大小表明我应该一次全部上传。关键是我不提前知道。它还需要我将块的顺序指定为查询参数,因此我需要在循环浏览文件块时跟踪我尝试上传的块号。
无论如何,我在我的项目中使用 Retrofit / OkHttp 并认为这对 Okio 来说应该是一个很好的用例。这就是我目前所拥有的,它似乎有效。但是我是 Okio 的新手,不知道我是否遗漏了一些明显的东西,或者这是否可以以更好的方式完成。
您可以看到我正在绑定上传一个块,等待成功响应(来自 Java 8 ),然后使用更新的和再次CompletableFuture
调用该方法。就像我说的,它有效,但我是 Okio 的新手,想知道我是否遗漏了一些明显的东西?chunkedUpload
offset
blockNumber
为什么我想使用 Okio 很大程度上是因为我要上传的文件通常在 30MB 到 1GB 之间,所以不要想一次将所有这些文件加载到内存中 :)。
java - OKHttp的BufferedSink(或BufferedSource)中如何实现seek()函数?
OKHttp的BufferSink(或BufferedSource)中如何实现seek()函数?
我们都知道,在 Java 中,RandomAccessFile 类有一个方法seek(long),它使我们能够从特定位置开始读取/写入文件,并且该位置之前的字节将被丢弃。OKHttp中是否有类似的方法?
我注意到BufferedSink中有一个方法:
但不幸的是,参数“offset”只接受int类型,而不是long类型,这在传输大文件时有一定的限制。
android - 如何在多平台 Android 模块中配置 Kotlin jvmTarget?
我收到此构建错误:
无法将使用 JVM 目标 1.8 构建的字节码内联到使用 JVM 目标 1.6 构建的字节码中。请指定正确的“-jvm-target”选项添加对 Java 8 语言功能的支持可以解决此问题。
尝试在 Android Studio 中为多平台模块编译此构建脚本:
这是一个非常普通的多平台构建脚本,主要由 Jetbrain 的 Mobile 插件自动生成。我无法通过将其插入到 Android 块的底部来以通常的方式解决此问题:
kotlinOptions 在这里是一个未解决的参考。考虑到这个错误的普遍性,我很惊讶互联网上几乎没有解决它。有一些相同或相似的 jvmTarget 错误的帖子,但它们都是从与此不同的构建上下文发布的。唯一出现完全相同错误的人在这里:
奇怪的是,据称最初的发帖人仅仅通过修改他的 androidx 导入就设法解决了这个问题。可能值得注意的是,我的所有六个“不能内联字节码”都与对新的多平台 Okio 库的方法调用相关联。但这肯定更有可能是我自己的设置有错误,而不是杰克沃顿帮所做的事情。
okhttp - 是否可以在 javascript 中运行 okio
我对 okio 有疑问,是否可以在 javascript 中运行 okio,是否有任何可用于 javascript 的 okio 包?
由于 okio 的发行说明中的这个命令,我得到了这个查询。
版本 3.0.0-alpha.3¶ 2021-04-06
新:将 NodeJsFileSystem 移动到它自己的模块中。内置它会阻止 Okio 在没有同步文件系统 API 的浏览器中工作。这是在 okio-nodefilesystem 工件中。
maven - 由于 okio.Bytestring.startswith 方法错误,Chrome 驱动程序未启动
我正在尝试通过 selenium 启动 Chrome 驱动程序。但奇怪的是,我收到了以下错误。我使用 okio 版本作为 2.1.0,kotlin-stdlib 作为 1.2.60。请帮助某人
java - java.lang.NoClassDefFoundError:解析失败:Lokio/Buffer
我正在使用 okhttp3 版本4.9.3
、okhttp3 日志拦截器4.9.3
和 okio 版本3.0.0
。我的代码类似于下面的代码片段(我使用的是 Android)。但我总是得到这个错误:java.lang.NoClassDefFoundError: Failed resolution of: Lokio/Buffer
.
java - 在 Android 上读取/写入 JSON,而不使用字符串等不可变类型
我正在开发的 android 应用程序有一个安全要求,即它不能将敏感信息存储为不可变类型(如字符串),而是使用可变类型,其缓冲区可以在使用后被覆盖。
这是一个问题,因为后端使用 JSON 来传递信息。
有没有办法使用可变对象(如 CharArray 而不是 String)创建 json 对象?
所以我可以例如序列化
至
同样阅读
变成一个物体
当前的应用程序架构是 GSON/Retrofit,但如果它可以工作,我愿意重构为 Moshi。
我有点迷茫,我真的很感激一些关于如何实现这一点的指导。
还是我应该一起放弃 JSON 并使用带有二进制字段的 protobuf 之类的东西?