2

我在 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() 是否切换了我正在运行的线程?

4

1 回答 1

3

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

于 2013-03-19T20:00:03.713 回答