0 votos

Buenas tardes. Necesito urgente de tu ayuda. Estoy haciendo una aplicacion en la cual, al ingresar, el sistema me pida una foto para validar el usuario, la foto es enviada a la web donde manualmente se acepta o se rechaza. El problema es que no se como hacer para que al aceptar la foto en la web, le permita al usuario ingresar a la aplicacion, o si es rechazada salirse. El problema esta en que no se como capturar o consultar luego de enviar la foto, el valor del campo. Lo consulto una vez al enviar la foto, y en ese momento predeterminadamente esta en False, pero cuando el administrador cambia el status a True la aplicacion deberia dejarme entrar y se queda en la misma pantalla ya que no consulta de nuevo la tabla. Probe con un while, pero se queda cargando y luego se cuelga y no funciona, y con un if solo me toma el primer status, pero no el cambio. Esta es la funcion. 

@TargetApi(Build.VERSION_CODES.HONEYCOMB)
private void validatePhoto() {
//Llamo al dato de la tabla//
    boolean check_request_validate = AppController.getInstance().getSharedPrefHelper().getRequestValidate();

   //mientras sea distinto que me consulte de nuevo el dato y me muestre un texto de espera//
 while (!check_request_validate) {
        Toast.makeText(context, getString(R.string.validate_image), Toast.LENGTH_LONG).show();
        check_request_validate = AppController.getInstance().getSharedPrefHelper().getRequestValidate();
    }
        Toast.makeText(context, getString(R.string.validate_ok), Toast.LENGTH_LONG).show();
        goMain(false); //si es aceptado, va al menu de inicio//   
}

 

Espero tu ayuda! es urgente!!! Gracias
preguntado por Raul Febres Sep 25, 2015 en Android

1 Respuesta

0 votos
Hola Raul. Puedes preguntar constantemente por el estado de la foto cada cierto tiempo, pero si lo haces tienes que hacerlo en un hilosecundario (AsyncTask o Service).

Otra cosa que es más recomendable para tu caso, como estás a la espera de un evento, utilizar el sistema de Push Notification de Android, o directamente Sockets
respondido por Ramon [Admin] Sep 26, 2015