我一直在寻找答案,但没有人真正回答,因为为此使用异步任务毫无意义。在 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);
}
}
}
任何要回答的问题都可以发表评论。感谢您的帮助。