我正在尝试等待方法调用完成后再继续,但是到目前为止,我的尝试没有用。
public class SaveMyEntitiesToServerResolver {
public void syncNewMyEntities() {
if (jsonObject != null) {
new MyAsyncJSONPostTaskService(mContext, postURL, jsonObject).myPostJSON(new IMyAsyncJSONPostTask() {
@Override
public void processFinishAsyncJSONPostTask(JSONObject jsonObject) {
for (int i = 0; i < jArr.length(); i++) {
JSONObject e;
try {
e = jArr.getJSONObject(i);
synchronized (this) {
setMyEntityMetadataId(e.getJSONArray("_myEntityMetadataList"));
this.wait();
// Then do something else
}
} catch (JSONException e1) {
e1.printStackTrace();
} catch (InterruptedException e1) {
e1.printStackTrace();
}
}
}
});
}
}
synchronized void setMyEntityMetadataId(JSONArray jsonArray) {
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject e;
try {
e = jsonArray.getJSONObject(i);
Long localMetadataId = Long.parseLong(e.getString("localMetadataId"));
// Save localMetadataId to DB
} catch (JSONException e1) {
e1.printStackTrace();
}
if (i == jsonArray.length() - 1) {
this.notifyAll();
}
}
}
}
如何继续执行方法调用才能完成?
谢谢大家。