私は現在、HttpURLConnectionをすばやく構築するための簡単なメソッドを作成していますが、発生する例外を理解するのに問題があります。現在、次のようになっています。
public static HttpURLConnection buildConnection(String urlString) throws IOException{
try{
URL url = new URL(urlString);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setReadTimeout(10000 /* 10 seconds */);
connection.setConnectTimeout(10000 /* 10 seconds */);
return connection;
} catch (MalformedURLException e){
// Impossible - All network URLs are taken from String resources
Log.w(LOG_LABEL, "URL \"" + urlString + "\" was malformed");
e.printStackTrace();
return null;
} catch (ProtocolException e){
// Impossible - "GET" is a valid Request method
e.printStackTrace();
return null;
}
}
MalformedURLExceptionとProtocolExceptionの例外をキャッチしてログに記録します。これは、発生する可能性がないことを知っているためです。ただし、url.openConnection()によってスローされる可能性のあるIOExceptionをスローします。この例外は何ですか?何が原因で、アプリが発生したときにどのように動作する必要がありますか?
どうもありがとう、ウィリアム