@@ -0,0 +1,1770 @@
+package utils;%0A%0Aimport android.app.ProgressDialog;%0Aimport android.content.Context;%0Aimport android.content.DialogInterface;%0Aimport android.os.AsyncTask;%0Aimport android.util.Log;%0A%0Aimport org.json.JSONObject;%0A%0Aimport java.net.SocketTimeoutException;%0A%0Apublic class GetJsonObjectAsync extends AsyncTask%3CString, Void, JSONObject%3E %7B%0A    private final static String TAG = %22GetJsonArrayAsync%22;%0A    private ProgressDialog progressDialog = null;%0A    protected Context context = null;%0A%0A    public GetJsonObjectAsync(Context context) %7B%0A        this.context = context;%0A    %7D%0A%0A    @Override%0A    protected JSONObject doInBackground(String... urls) %7B%0A        return this.queryUrlForJson(urls%5B0%5D);%0A    %7D%0A%0A    @Override%0A    protected void onPreExecute() %7B%0A        progressDialog = ProgressDialog.show(%0A                this.context,%0A                %22Loading%22,%0A                %22Just a second...%22,%0A                true,%0A                true,%0A                new DialogInterface.OnCancelListener() %7B%0A                    @Override%0A                    public void onCancel(DialogInterface arg0) %7B%0A                        GetJsonObjectAsync.this.cancel(true);%0A                    %7D%0A                %7D%0A        );%0A    %7D%0A%0A    @Override%0A    protected void onPostExecute(JSONObject json) %7B%0A        if (progressDialog != null) %7B%0A            progressDialog.dismiss();%0A        %7D%0A        progressDialog = null;%0A    %7D%0A%0A    protected JSONObject queryUrlForJson(String url) %7B%0A        JSONObject json = new JSONObject();%0A%0A        try %7B%0A            json = JsonHelper.getJsonObjectFromUrl(url);%0A        %7D catch (SocketTimeoutException e) %7B%0A            Log.e(TAG, Lazy.Ex.getStackTrace(e));%0A        %7D catch (Exception e) %7B%0A            Log.e(TAG, Lazy.Ex.getStackTrace(e));%0A        %7D%0A%0A        return json;%0A    %7D%0A%7D%0A

add GetJsonObjectAsync