У меня есть собственное приложение для Android, использующее фреймворк volley для извлечения данных из сценария конца сервера PHP
.random com.android.volley.NoConnection error, java.io.InterruptedIOException, statuscode = 0
В большинстве случаев он работал хорошо, но у меня 20% -ный отказ.
Ошибка говорит:
com.android.volley.NoConnection, java.io.InterruptedIOException.
Я отладил, что нашел statuscode = 0
, что, очевидно, было не так.
Я понятия не имею, что может быть причиной? Поскольку он работает больше всего времени, поэтому не должно быть очевидного кода ошибки.
FYI, эти сценарии PHP на сервере отлично работают для моего приложения IOS.
Пожалуйста, позвольте мне опубликовать мой код здесь:
retryConnBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
txtOut.append("\n");
txtOut.append("Button with Retry Click");
Log.d("Click", "Button Click");
final String url = "https://www.myserver.com/api/getBalanceInfoTest?token=7ff3317a4f3dc07d0c297a7d16d2049c&t=" + System.currentTimeMillis();
//final String url = "http://192.168.1.23/base/test/";
JsonObjectRequest getRequest = new JsonObjectRequest(Request.Method.GET, url, null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
txtOut.append("\n");
txtOut.append("Result with Retry:");
txtOut.append(response.toString());
Log.d("Response", response.toString());
VolleyLog.e("Response:", response.toString());
}
},
new Response.ErrorListener(){
@Override
public void onErrorResponse(VolleyError error) {
txtOut.append("\n");
txtOut.append("Error with Retry:");
txtOut.append(error.toString());
Log.d("Error.Response", error.toString());
VolleyLog.e("Error:", error.getMessage());
}
});
getRequest.setRetryPolicy(new DefaultRetryPolicy(5000, 5, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
queue.add(getRequest);
queue.start();
}
});
}
И для получения дополнительной информации, вывод из моего PHP
сценария: {"hsaBalance":"1000.00"}
, созданный Json_encode()
функцией PHP
.
отправьте свой код и посмотрите: http://stackoverflow.com/help/how-to-ask –
спасибо, что напомнили. –