我有需要将异步任务作为内部方法运行的对象(不在 ui 线程上),我想将 ui 线程传递给该方法,然后以这种方式在 asynctask 上实现 ui 线程 - 有没有办法这样做?
伪代码:
public class EditDetails extends Activity{
MyObject obj = new obj;
obj.syncWithServer(EditDetails.this);
}
public class MyObject {
public void syncWithWerver(EditDetails parent){
final class GetUserHttpTask extends AsyncTask<String/* Param */, Boolean /* Progress */, String /* Result */> {
@Override
protected String doInBackground(String... params) {
return "";
}
@Override
protected String onPostExecute(String result) {
//this doesn't run
}
}
}
}
注意:目前这不起作用,因为 onPostExecute 在 doInBackground 之后没有触发
编辑
这段代码是伪代码,实际问题仍在发生,我在这里列出了它http://pastebin.com/jW6JpUbg .. 基本上它在从不执行 onPostExecute 的 pastebin 上运行第 72 行后卡住了