i try extends AsyncHttpClient with one boolean argument that on true show dialog and retry connection but i don't how can i access user sent AsyncHttpResponseHandler onfailure event, and i can't show retry dialog
so retry with extends AsyncHttpResponseHandler like this:
import org.apache.http.Header;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.view.View;
import android.view.View.OnClickListener;
import com.loopj.android.http.AsyncHttpClient;
import com.loopj.android.http.AsyncHttpResponseHandler;
public class CuAsyncHttpResponseHandler extends AsyncHttpResponseHandler {
private CuActivity activity;
private boolean retry;
private CuAsyncHttpResponseHandler response;
public void CuAsyncHttpResponseHandler(CuActivity activity) {
this.activity = activity;
this.retry = false;
this.response = this;
}
public CuAsyncHttpResponseHandler(CuActivity activity, boolean retry) {
this.activity = activity;
this.retry = retry;
this.response = this;
}
public void onFailure(int statusCode, Header[] headers,
byte[] errorResponse, Throwable e) {
if (this.retry == true) {
final CuDialogRetry cdd = new CuDialogRetry(activity, null, true);
cdd.getWindow().setBackgroundDrawable(
new ColorDrawable(Color.TRANSPARENT));
cdd.show();
cdd.getretryButton().setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
response.onStart();
cdd.dismiss();
}
});
}
}
@Override
public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
}
}
but onstart don't restart request(because it is for response and don't have access to retry client send request
0 comments:
Post a Comment