android - Lokhttp3/internal/Util 类中没有静态方法 delimiterOffset

标签 android dependencies okhttp jitsi jitsi-meet

我正在使用 jitsi 库进行视频连接。第一次安装时它工作正常,但如果用户已经拥有应用程序并从 Play 商店更新它,它会崩溃。崩溃日志说:

No static method delimiterOffset(Ljava/lang/String;IILjava/lang/String;)I in class Lokhttp3/internal/Util; or its super classes (declaration of 'okhttp3.internal.Util' appears in base.apk!classes3.dex)


有 2 个自动生成的文件:1) okhttp3.JavaNetCookieJar 2) okhttp3.internal.Util。
来自类(class)JavaNetCookieJar , 这个 delimiterOffset(header, pos, limit, ";,")方法在 Util 中调用类(class)。Util类的 delimiterOffset() 方法与调用的方法不兼容:delimiterOffset(delimiters: String, startIndex: Int = 0, endIndex: Int = length)delimiterOffset(delimiter: Char, startIndex: Int = 0, endIndex: Int = length)上面的方法在 Util 中被调用。类(class)。
当我将鼠标悬停在 JavaNetCookieJar 上时类,它说它来自okhttp3-urlconnection-3.12.1包,当我将鼠标悬停在 Util 上时包装上说它来自 okhttp-4.8.0 .我在用implementation 'com.squareup.okhttp3:logging-interceptor:4.8.0'有趣的事实是,即使我在 gradle 中删除 okhttp3 实现,这两个文件也不受影响。

最佳答案

您必须使用所有 OkHttp 依赖项的完全相同的版本。您可以手动配置,也可以使用 BOM 自动完成。

dependencies {
   api(platform("com.squareup.okhttp3:okhttp-bom:4.8.0"))
   api("com.squareup.okhttp3:okhttp")              // No version!
   api("com.squareup.okhttp3:logging-interceptor") // No version!
}

关于android - Lokhttp3/internal/Util 类中没有静态方法 delimiterOffset,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64351110/

相关文章:

java - 使用okhttp时如何将Map添加到RequestBody而不是单独添加键值对?

android - Retrofit2:没有为@Field 注释的参数调用序列化程序

在触摸或拖动事件上旋转 ImageView 的 Android 代码

java - InputConnection.finishComposingText() NullPointerException

linux - Linux 上的 Node 中的 "Permission Denied",在运行 start-script/w local nodemon/mocha/babel-node 时

android - 重复的依赖项会影响 APK 大小吗?

android - 如何防止 Retrofit 自动跟随 302

android - 避免位图内存不足错误的建议

java - 如何从 Presenter 解析 JSON 并设置为 RecyclerView(Android)

java - 从 Gradle 导入项目时 IntelliJ 中的依赖项错误