我将为您翻译中文:
我一直在寻找答案,但没有人真正回答,因为使用异步任务没有意义。在Android API 11或更高版本中,它将强制您在主线程上进行网络请求,因此我必须使用异步任务。所以,问题来了:有没有可能等待异步任务完成后再继续呢?因为我需要调用方法等数据都已经准备好了。
这是我的代码:
public JSONObject getJSONFromUrl(String url) {
this.url = url;
new loadURL().execute();
// Do this when ASYNC HAS FINISHED
return jObj;
}
class loadURL extends AsyncTask <Void, Void, Void> {
protected void onPreExecute() {
}
protected Void doInBackground(Void... unused) {
//do stuff in background
return (null);
}
}
}
如果有任何问题需要回答,请留下评论。感谢您的帮助。