ネットから Json を取得するために AsyncTask を作成したクラスがあります。
public class MyAsyncGetJsonFromUrl extends AsyncTask<Void, Void, JSONObject> {
    Context context_;
    String url_;
    List<NameValuePair> params_;
    public MyAsyncGetJsonFromUrl(Context context_, List<NameValuePair> params_, String url_) {
        this.context_ = context;
        this.params_ = params_;
        this.url_ = url_;
    }
    @Override
    protected JSONObject doInBackground(Void... params) {
        JSONObject jObj_ = null;
        try {
            DefaultHttpClient httpClient = new DefaultHttpClient();
            HttpPost httpPost = new HttpPost(url_);
            httpPost.setEntity(new UrlEncodedFormEntity(params_));
            HttpResponse httpResponse = httpClient.execute(httpPost);
            HttpEntity httpEntity = httpResponse.getEntity();
            InputStream is_ = httpEntity.getContent();
            BufferedReader reader = new BufferedReader(new InputStreamReader(is, "iso-8859-1"), 8);
            StringBuilder sb = new StringBuilder();
            String line = null;
            while ((line = reader.readLine()) != null) {
                sb.append(line + "\n");
            }
            is_.close();
            String json_ = sb.toString();
            Log.e("JSON", json);
            jObj_ = new JSONObject(json_);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return jObj_;
    }
    protected void onPostExecute(JSONObject jObj_) {
        jObj = jObj_;
    }
}
また、このクラスには、メソッドを呼び出しているアクティビティにこの Json オブジェクトを返すメソッドがあります。
public JSONObject getJSONFromUrl(String url, List<NameValuePair> params) {
    new MyAsyncGetJsonFromUrl(context, params, url).execute();
    return jObj;
}
問題は、AsyncTask を開始したnew MyAsyncGetJsonFromUrl(context, params, url).execute();直後に行return jObj;が呼び出され、null が返されることです。したがって、非同期タスクが完了するまで実行を停止したいと思います。このシナリオとまったく同じ質問は他にないため、この質問を重複として言及しないでください。