gpt4 book ai didi

java - 显然缺少异常

转载 作者:行者123 更新时间:2023-12-01 13:11:45 26 4
gpt4 key购买 nike

在我的 Android 应用程序中,我有一个 AsyncTask,它从我的服务器下载照片。如果出现异常(主要是连接超时),我会向用户显示一条消息。我的问题是我的代码在大多数情况下都可以工作(这意味着有时当我中断 WiFi 连接时,我的 logcat 中会出现异常,但该消息不会出现,因此我结束了它认为可能存在我无法处理的异常),但我无法弄清楚确切的原因。我将发布在 AsyncTask 中运行的代码以及完成基本工作的函数。希望你能发现我遗漏的东西

        @Override
protected String doInBackground(String... args) {


JSONParser jParser = new JSONParser();
JSONObject jsonObj = jParser.getJSONFromUrl(url);
Log.d("check1",url);
try {

list.addAll(processJsonData(jsonObj));

} catch (JSONException e) {
e.printStackTrace();
onDownloadFailed(this);
return "failed";
} catch (SocketException e) {
Log.e("Exception", e.getLocalizedMessage());
onDownloadFailed(this);
return "failed";
} catch (IOException e) {
Log.e("Exception", e.getLocalizedMessage());
onDownloadFailed(this);
return "failed";
}finally {
jsonObj=null;
}


return "done";
}
<小时/>

进程JsonData实际上更大,这是下载照片的部分,另一部分是将字符串映射到一个大的Json文件

  private ArrayList<Monument> processJsonData(JSONObject jsonObj) throws IOException, SocketException, JSONException{

if(attachments!=null){
int lengthSize;
if(attachments.length()<3)
lengthSize=attachments.length();
else
lengthSize=3;

for(int j=0;j<lengthSize;++j){

JSONObject atta = attachments.getJSONObject(j);
JSONObject images = atta.optJSONObject(TAG_IMAGES);
if(images!=null){
JSONObject medium = images.getJSONObject(TAG_MEDIUM);
String url_image = medium.getString(TAG_URL_IMAGE);
String id = atta.getString("id");

String filename =title.replace(" ","")+id+".nomedia";
File destination = new File(MyApplication.getPhotoStorage() ,filename);


URL url = new URL (url_image);

InputStream is = url.openStream();
OutputStream os = new FileOutputStream(destination);


byte[] b = new byte[2048];
int length;

while ((length = is.read(b)) != -1) {
os.write(b, 0, length);
}

is.close();
os.close();
localPhotosUrl.add(destination.getAbsolutePath());

}

}
}

enter image description here

最佳答案

也许您可以说出正在抛出的实际异常?它可能是一个 RuntimeException,因此未被检查。

有关检查/非检查异常的更多信息,请参阅:Oracle Docs - Exceptions

关于java - 显然缺少异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22804410/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com