我正在使用一种方法获取网站的图标。当然,并不是每个网站都有网站图标。所以我想抓住它。如果网站没有图标,应用程序不会崩溃,但我仍然在 LogCat 中收到 FileNotFoundException。
我遇到的问题是我无法抓住它
当我添加`catch (FileNotFoundException f)
到我的 try-catch 块它告诉我
Unreachable catch block for FileNotFoundException. This exception is never thrown from the try statement body.
我的选择是删除它或向 doInBackground 方法添加 throws 声明。后者是不可能的。这是整个 Try-Catch
try{
String baseURL = getBaseURL ( sourceURLArr[i] );
System.out.println(baseURL + "/favicon.ico");
Bitmap favicon = getBitmapFromURL( baseURL + "/favicon.ico");
Drawable fv = new BitmapDrawable(getResources(),
Bitmap.createScaledBitmap(favicon, 20, 20, true));
source [i].setCompoundDrawablesWithIntrinsicBounds(fv, null, null, null);
} catch(NullPointerException e){
} catch(FileNotFoundException f){
}
我已经尝试用 NullPointerException 切换 FileNotFoundException 但这是同样的错误。当我在后台方法中将 throws 添加到异步任务中时,我得到了
Exception FileNotFoundException is not compatible with throws clause in AsyncTask<Void,Void,Void>.doInBackground(Void[])
我现在如何捕捉 FileNotFoundException?