android异步任务:只有创建视图层次结构的原始线程才能触及其视图

时间:2013-03-19 19:54:36

标签: android multithreading android-asynctask

我在doInBackround中有一个异步任务我做了各种各样的事情,在我运行的各个部分之后

 onProgressUpdate("You proceeded a bit further 1/5");

多次正常工作直到(仍然在doInBackground中)我有

HttpSessionToken = (HttpURLConnection)new URL("http://myserver").openConnection();
HttpSessionToken.setRequestMethod("GET");   
HttpSessionToken.setRequestProperty("Accept", "application/json");

onProgressUpdate("Still everything is working fine");
int returnCode = HttpSessionToken.getResponseCode();
onProgressUpdate("This onProgressUpdate crashes!");

所以最后的onProgressUpdate崩溃,但为什么会崩溃? getResponseCode()是否切换了我正在运行的线程?

1 个答案:

答案 0 :(得分:3)

你不直接调用onProgressUpdate,你必须调用publishProgress并让AsynTask框架处理要在UI线程上回调的onProgressUpdate