Cerrar e ir a un activity tras x tiempo de inactividad del usuario

publicado por: Anonymous

Deseo realizar un método (service, alarm , etc) que pueda calcular después de x tiempo de inactividad del usuario con el app

, que cierre la activity actual

y te mande a la activity inicial (iniciar sesión)

Muchas gracias

solución

Puedes usar la clase CountDownTimer, acá te dejo un ejemplo de como usarlo

private long startTime=15*60*1000; // 15 MINS IDLE TIME
private final long interval = 1 * 1000;

@Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    countDownTimer = new MyCountDownTimer(startTime, interval);

}

@Override
public void onUserInteraction(){

    super.onUserInteraction();

    //Reset the timer on user interaction...
    countDownTimer.cancel();            
    countDownTimer.start();
}

public class MyCountDownTimer extends CountDownTimer {
    public MyCountDownTimer(long startTime, long interval) {
        super(startTime, interval);
    }

    @Override
    public void onFinish() {
        //DO WHATEVER YOU WANT HERE
        // CIERRA LA APP MATANDO EL PROCESO Y VUELVE A ABRIRLO. 
         android.os.Process.killProcess(android.os.Process.myPid());
    }

    @Override
    public void onTick(long millisUntilFinished) {
    }
}

En el método onFinish tendrías que ejecutar la acción de iniciar otra actividad.

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *