Set Timeout sur Http Asynchrone Client
im en utilisant le Http Asynchrone Client qui peut être trouvé ici: http://loopj.com/android-async-http/
et il fonctionne très bien en plus d'environ 1 tous les 10 ou si les demandes je fais finir de me donner une infinie boîte de dialogue de progression qui, je crois, signifie pour quelque raison que ce soit pas de réponse de toute nature est d'être renvoyé parce que j'ai écrit du code pour fermer la boîte de dialogue dans onSuccess ET onFailure donc je suis un peu confus comment cela pourrait se produire.
Voici mon code qui définit la demande:
public static void post(String token,String url, RequestParams params, AsyncHttpResponseHandler responseHandler) {
Log.i(token,"token");
client.addHeader("token", token);
client.setTimeout(3000);
client.post(url, params, responseHandler);
}
Et c'est là où je remplace onSuccess et onFailure:
@Override
public void onFailure(Throwable arg0, String arg1) {
//TODO Auto-generated method stub
super.onFailure(arg0, arg1);
pdialog.dismiss();
Log.i("failed to login", arg1.toString());
Toast.makeText(getActivity(), arg1.toString() , Toast.LENGTH_LONG).show();
}
@Override
public void onSuccess(final JSONObject json) {
pdialog.dismiss();
}
- Avez-vous résolu le problème? J'ai rencontré le même problème. Parfois il y reposent. Pas de onFailure ou onSuccess de rappel, même après que je définir le délai d'attente.
Vous devez vous connecter pour publier un commentaire.
La bibliothèque semble être de faire ce que vous voulez qu'il fasse,
setTimeout
code de laAsyncHttpClient
classeSi elle ne fonctionne pas alors mieux signaler le problème ici
Après beaucoup de frustration que j'ai renoncé à comprendre cela, MAIS la version la plus récente, il est très facile à faire si vous venez de mettre à niveau votre lib.
Je pense que la meilleure façon est d'utiliser à la suite de méthodes de remplacement