¿Cómo puedo obtener Robospice para tratar cualquier cosa que no sea una respuesta 200 de Retrofit & OKHttp como un error
Estoy usando Robospice en android con Retrofit y OKHttp. Todos los trabajos grandes con las respuestas pasaron de nuevo a la actividad usando Robospice RequestListener. El problema es que sólo devuelve un error si la conexión se agota o se produce otro problema de red. Si un 401 es devuelto entonces se clasifica como un éxito, pero con una respuesta nula, ya que no podía analizar el JSON en nuestro POJO MobileAppSetup.
Por el momento estoy teniendo que hacer la comprobación nula en la respuesta pero no tengo ninguna idea qué la razón era si era un error del servidor o un 401 válido.
- Uso de adaptadores de sincronización + Volley / RoboSpice para procesamiento sincronizado de solicitudes de red
- ¿Cómo conectarse a una solicitud pendiente con RoboSpice (Splash> Actividad principal)?
- RoboSpice y ORMLite - Acceso a los datos
- Retrofit: parámetros de consulta múltiples en el comando @GET?
- Error de entrada de Duplicate Commons-Io usando Robospice y Android Studio
public final class HTTPRequestListener implements RequestListener<MobileAppSetup> { @Override public void onRequestFailure(SpiceException spiceException) { Log.d("", "failure:"+ spiceException); loginProgress.hide(); } @Override public void onRequestSuccess(final MobileAppSetup response) { Log.d("","success. Data: "+response); if(response==null) showDialog("Error logging in", "Please check your username and password and try again.", ""); loginProgress.hide(); postLoginProcess(response); } }
Necesito pasar estos errores a la devolución de llamada de onRequestFailure así que puedo manejarla correctamente. ¿Hay una manera de especificar los códigos de error que Robospice debe tratar como un error. Creo que implica agregar algún tipo de controlador de errores personalizado pero realmente no puede encontrar una solución en este momento.
- Objeto de almacenamiento Robospice que extiende ArrayList en la base de datos a través de Ormlite
- ¿Es realmente necesario RoboSpice shouldStop ()?
- Cambiar ConnectionTimeout de Retrofit OkHttpClient en tiempo de ejecución
- Robospice en el contexto android.os.Service
- Borrar datos antiguos de caché con robospice ormlite
- Uso de RoboSpice con Jackson2 y Spring
- Robospice solicitud nunca termina si la aplicación va en el fondo y luego llega a primer plano?
- El edificio con maven falla
Esto debido al error en el error OKHTTP cliente posible !
El problema es Cuando el servidor responde con un 401 Respuestas no autorizadas, el objeto Callback llama a su método failure ().
Cuando el servidor devuelve con el estado 401, el objeto de respuesta
RetrofitError
es nulo y el flagnetworkError
se establece en true, haciendo imposible que la aplicación compruebeerror.getResponse().getStatus()
Creo que el error se encuentra en el http cliente. Cuando uso OkClient consigo este error: java.io.IOException: Ningunos desafíos de la autentificación encontrados
Te sugiero que descargue nuevo archivo okhttp jar desde la plaza / okhttp ejecutar el proyecto de nuevo! O intentar con cualquier otro cliente en lugar de okhttp.
- AppCompat Color del título
- Compruebe la visibilidad y la altura del teclado en android con android: windowSoftInputMode = "adjustNothing"