Android io.reactivex.exceptions.UndeliverableException:io.grpc.StatusRuntimeException:CANCELLED:调用被中断
在做出如下例外情况后,grpc呼叫被取消:Android io.reactivex.exceptions.UndeliverableException:io.grpc.StatusRuntimeException:CANCELLED:调用被中断,android,grpc,rpc,Android,Grpc,Rpc,在做出如下例外情况后,grpc呼叫被取消: RxComputationThreadPool-3 io.reactivex.exceptions.UndeliverableException: io.grpc.StatusRuntimeException: CANCELLED: Call was interrupted at io.reactivex.plugins.RxJavaPlugins.onError(RxJavaPlugins.java:366) ~[na:0.0] at
RxComputationThreadPool-3
io.reactivex.exceptions.UndeliverableException: io.grpc.StatusRuntimeException: CANCELLED: Call was interrupted
at io.reactivex.plugins.RxJavaPlugins.onError(RxJavaPlugins.java:366) ~[na:0.0]
at io.reactivex.internal.operators.observable.ObservableCreate$CreateEmitter.onError(ObservableCreate.java:83) ~[na:0.0]
at com.mindorks.framework.mvp.data.network.AppApiHelper.lambda$uploadConfiguration$12(AppApiHelper.java:647) ~[na:0.0]
at com.mindorks.framework.mvp.data.network.AppApiHelper$$Lambda$13.subscribe(Unknown Source) ~[na:0.0]
at io.reactivex.internal.operators.observable.ObservableCreate.subscribeActual(ObservableCreate.java:40) ~[na:0.0]
at io.reactivex.Observable.subscribe(Observable.java:10700) ~[na:0.0]
at io.reactivex.internal.operators.observable.ObservableRetryPredicate$RepeatObserver.subscribeNext(ObservableRetryPredicate.java:111) ~[na:0.0]
at io.reactivex.internal.operators.observable.ObservableRetryPredicate.subscribeActual(ObservableRetryPredicate.java:41) ~[na:0.0]
at io.reactivex.Observable.subscribe(Observable.java:10700) ~[na:0.0]
at io.reactivex.internal.operators.observable.ObservableSubscribeOn$1.run(ObservableSubscribeOn.java:39) ~[na:0.0]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:428) ~[na:0.0]
at java.util.concurrent.FutureTask.run(FutureTask.java:237) ~[na:0.0]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:272) ~[na:0.0]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) ~[na:0.0]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) ~[na:0.0]
at java.lang.Thread.run(Thread.java:761) ~[na:0.0]
rpc调用是:
@Override
public Observable<ConfigurationResponse> uploadConfiguration(ConfigurationRequest request, String action) {
return Observable.create(e -> {
try {
ConfigurationRequest configurationRequest =
ConfigurationRequest.newBuilder(request)
.setMeta(getMeta(action))
.build();
CONFIGURATION_LOGGER.info("Configuration Request: " + " Server IP: " + Configuration.SERVER_IP);
CONFIGURATION_LOGGER.info("Configuration Request: " + " Request: " + configurationRequest);
checkInternetAvailability();
ConfigurationResponse configurationResponse = machineOperationsServiceStub.getConfiguration(configurationRequest);
CONFIGURATION_LOGGER.info("Configuration Response " + "Response: " + configurationResponse);
e.onNext(configurationResponse);
} catch (Exception ex) {
CONFIGURATION_LOGGER.info("Getting Configuration " + " Exception: " + ex);
e.onError(ex);
}
});
}
@覆盖
公共可观察上载配置(ConfigurationRequest请求、字符串操作){
返回可观察。创建(e->{
试一试{
配置请求配置请求=
ConfigurationRequest.newBuilder(请求)
.setMeta(getMeta(操作))
.build();
CONFIGURATION_LOGGER.info(“配置请求:“+”服务器IP:“+CONFIGURATION.Server_IP”);
CONFIGURATION_LOGGER.info(“配置请求:“+”请求:“+configurationRequest”);
检查互联网可用性();
ConfigurationResponse ConfigurationResponse=machineOperationsServiceStub.getConfiguration(configurationRequest);
CONFIGURATION_LOGGER.info(“配置响应”+”响应:“+configurationResponse”);
e、 onNext(配置响应);
}捕获(例外情况除外){
CONFIGURATION_LOGGER.info(“获取配置”+“异常:”+ex);
e、 onError(ex);
}
});
}
它在不同的线程池中给出了这个错误&它使应用程序崩溃。它的发生如此频繁