我有以下几个问题,设置超时的代码。请指点。
谢谢
发布于 2018-09-20 06:38:38
这是处理failSilently
标志的代码。如您所见,如果定义了failSilently
,则该方法将返回。所以,要么您没有将failSilently
定义为true,要么代码的其他部分将其设置为false。或者您有一个网络错误侦听器,它显示该对话框:
protected void handleException(Exception err) {
if(exceptionListeners != null) {
if(!isKilled()) {
NetworkEvent n = new NetworkEvent(this, err);
exceptionListeners.fireActionEvent(n);
}
return;
}
if(killed || failSilently) {
failureException = err;
return;
}
Log.e(err);
if(silentRetryCount > 0) {
silentRetryCount--;
NetworkManager.getInstance().resetAPN();
retry();
return;
}
if(Display.isInitialized() && !Display.getInstance().isMinimized() &&
Dialog.show("Exception", err.toString() + ": for URL " + url + "\n" + err.getMessage(), "Retry", "Cancel")) {
retry();
} else {
retrying = false;
killed = true;
}
}
超时发生在连接阶段,一旦连接超时不适用。您需要显式地关闭连接。因此,3
可能与此无关。
超时在平台之间的行为不一致,通常我建议使用错误侦听器,而不是依赖错误结果,使用该代码来测试连接性。
https://stackoverflow.com/questions/52415277
复制相似问题