我有一个有趣的问题。
我有一个应用程序,在它内部,我试图解释手机连接到路由器的情况,但该路由器未连接到互联网。
我尝试了多种建立连接的方法,但没有一个超时可以解决这种情况。
我试过了:
HttpParams httpParameters = new BasicHttpParams();
int timeoutSocket = 1000;
HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket);
HttpConnectionParams.setConnectionTimeout(httpParameters, timeoutSocket);
我也试过:
HttpURLConnection huc = (HttpURLConnection)serverAddress.openConnection();
huc.setDoOutput(true);
huc.setRequestMethod("PUT"); // For amazon
//huc.setRequestMethod("POST"); // For regular server.
huc.setRequestProperty("Content-Type", "text/plain");
huc.setRequestProperty("Content-Length", String.valueOf(bytes));
huc.setFixedLengthStreamingMode(bytes);
huc.setConnectTimeout(1000); // Establishing connection timeout
huc.setReadTimeout(1000);
但在这两种情况下,当我执行/获取输出流时,大约需要 20 秒才能收到 UnknownHostException 错误。
我希望在得出该结论之前减少到最多 5 秒。
有没有办法做到这一点?
干杯