我有一个项目作为HttpCommunication的“库”。我将数据发布到其中并接收响应。 Lib的方法可以抛出我希望在托管应用程序中捕获的几个异常,但不知何故,我只能捕获一般的Exception而不是特定的一次。
图书馆方法代码:
public byte[] execute(String entityStr) throws UnsupportedEncodingException,
ClientProtocolException, IOException
{
...
// some code that can throw mentioned exceptions
}
主持班级:
try {
byte[] response = httpClient.execute(profile);
} catch (Exception e) {
e.printStackTrace();
}
上面的代码编译,但下面的代码没有。
try {
byte[] response = httpClient.execute(profile);
} catch (UnsupportedEncodingException e) {
} catch (ClientProtocolException e) {
}
标记为错误的异常对象,消息说
UnsupportedEncodingException的无法访问的catch块。永远不会从try语句体中抛出此异常。
托管类是一项活动。在AsyncTask类中完成的通信。 如果有人知道它有什么问题,请解释我。
答案 0 :(得分:0)
你很可能需要清理和重建 - 如果你正在调用你认为的方法,并且签名如图所示,那么它几乎必须有效。