SignalR 调用已取消

SignalR Invocation was canceled

我在 android 应用程序中使用 signalR 核心 java 客户端。它在启用 minify 之前工作正常但是在启用它之后 signalR 连接到服务器但是在第一次调用时我得到了这个错误:

java.util.concurrent.CancellationException: Invocation was canceled.
        at b.e.a.Y.a(InvocationRequest.java:43)
        at b.e.a.M$a.a(HubConnection.java:835)
        at b.e.a.M.f(HubConnection.java:440)
        at b.e.a.M.c(HubConnection.java:309)
        at b.e.a.n.a(lambda)
        at b.e.a.oa.b(WebSocketTransport.java:96)
        at b.e.a.oa.a(WebSocketTransport.java:56)
        at b.e.a.t.a(lambda)
        at b.e.a.ea$a.onClosing(OkHttpWebSocketWrapper.java:89)
        at okhttp3.internal.ws.RealWebSocket.onReadClose(RealWebSocket.java:345)
        at okhttp3.internal.ws.WebSocketReader.readControlFrame(WebSocketReader.java:204)
        at okhttp3.internal.ws.WebSocketReader.processNextFrame(WebSocketReader.java:99)
        at okhttp3.internal.ws.RealWebSocket.loopReader(RealWebSocket.java:262)
        at okhttp3.internal.ws.RealWebSocket.onResponse(RealWebSocket.java:201)
        at okhttp3.RealCall$AsyncCall.execute(RealCall.java:135)
        at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
        at java.lang.Thread.run(Thread.java:761)

我现在不知道这个错误是针对 signalR 或 okhttp 的,所以我在 proguard 中添加了。 这是我的混淆器中的这个 2。


##------------------- signalR -----------
-keep class microsoft.** { *; }
-dontwarn org.slf4j.**
##--------------- okhttp  —------—
-keepattributes Signature
-keepattributes *Annotation*
-keep class okhttp3.** { *; }
-keep interface okhttp3.** { *; }
-dontwarn okhttp3.**
-dontnote okhttp3.**

##--------------- Okio  —------—
-keep class sun.misc.Unsafe { *; }
-dontwarn java.nio.file.*
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement

这是我的错,因为我之前使用了 signalR(不是核心)并且我为它添加了 proguard

-keep class microsoft.** { *; }

我必须为 signalR 核心更改此设置并添加

-keep class com.microsoft.** { *; }