gpt4 book ai didi

android - 在 okhttp 缓冲上在 android 媒体播放器上流式传输音频时出现异常

转载 作者:行者123 更新时间:2023-11-30 05:12:06 24 4
gpt4 key购买 nike

E/JavaBinder: *** Uncaught remote exception!  (Exceptions are not yet supported across processes.)
java.lang.ArrayIndexOutOfBoundsException: length=8192; index=8192
at com.android.okhttp.okio.Buffer.writeByte(Buffer.java:973)
at com.android.okhttp.internal.Platform.concatLengthPrefixed(Platform.java:212)
at com.android.okhttp.internal.Platform.configureTlsExtensions(Platform.java:116)
at com.android.okhttp.internal.io.RealConnection.connectTls(RealConnection.java:187)
at com.android.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:149)
at com.android.okhttp.internal.io.RealConnection.connect(RealConnection.java:112)
at com.android.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:184)
at com.android.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:126)
at com.android.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:95)
at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:281)
at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:224)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:461)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:407)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:538)
at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:105)
at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:26)
at android.media.MediaHTTPConnection.seekTo(MediaHTTPConnection.java:212)
at android.media.MediaHTTPConnection.getSize(MediaHTTPConnection.java:374)
at android.media.IMediaHTTPConnection$Stub.onTransact(IMediaHTTPConnection.java:81)
at android.os.Binder.execTransact(Binder.java:731)

此异常发生在 android 媒体播放器流式传输和缓冲上,播放器在不寻常的时间段内卡在同一位置,有时甚至永远卡在同一位置。

最佳答案

我认为您无能为力。这是been reported给 okhttp 开发者。但是,正如他们指出的那样,错误出在 okhttp 的内部打包版本中,它包含在 android 中。 Square 的外部开发版本没有错误,因此他们理所当然地将该问题作为非问题关闭。

错误已reported to google ,但在过去将近 2 年里似乎没有采取任何行动。

也许您可以在您的项目中包含来自 square 的更新的上游版本的 okhttp,并以某种方式告诉 MediaHTTPConnection 使用 HttpURLConnectionokhttp3 实现>。有 OkUrlFactory可以与 java 的 URL.setURLStreamHandlerFactory 一起使用.然而,这已被弃用,覆盖内置的 url 流处理程序逻辑可能不是一个好主意。

事实上,它已从 okhttp 的最新版本中删除。删除它的开发人员确实做了一个 ObsoleteUrlFactory.java您可以将自己复制/粘贴到您的项目中并用作:

OkHttpClient okHttpClient = new OkHttpClient();
URL.setURLStreamHandlerFactory(new ObsoleteUrlFactory(okHttpClient));

关于android - 在 okhttp 缓冲上在 android 媒体播放器上流式传输音频时出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53538210/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com