我使用AsyncTask
来执行一些后台计算,但我无法找到处理异常的正确方法。目前我正在使用下面的代码:Asynctask错误处理
private class MyTask extends AsyncTask<String, Void, String>
{
private int e = 0;
@Override
protected String doInBackground(String... params)
{
try
{
URL url = new URL("http://www.example.com/");
}
catch (MalformedURLException e)
{
e = 1;
}
// Other code here...
return null;
}
@Override
protected void onPostExecute(String result)
{
if (e == 1)
Log.i("Some Tag", "An error occurred.");
// Perform post processing here...
}
}
我相信变量e maye可以写入/访问的主和工作线程。据我所知只有在doInBackround()
完成后才能运行,我可以省略任何同步吗?
这是错的代码? AsyncTask
有没有一个同意或正确的方法来处理异常?
可能重复(http://stackoverflow.com/questions/1739515/asynctask-and-error-handling-on-android) – blahdiblah 2012-04-11 19:35:09