Chercher Et Ou Phrase  
Dans:          


Pour les nouveau visiteurs

Entrez ici

Chercher le Forum



 

 Les Forums
  Programmation avancée
Repondre a ce sujet  

Sujet Verrouillage temporaire de l'application android
Message envoyé le 10-01-2024 par dikens (Côte d'ivoire)  
Bonjour team.
Je souhaite réaliser dans Windev Mobile, un systeme de verrouillage de l'application après une certaine durée d'inactivité de l'utilisateur.
merci de me faire part de vos idées et si possible les codes pouvant me permetre de solutionner mon problème.

j'ai un code qui fonctionne correctement dans Android Studio mais je ne sais pas comment m'y prendre pour l'intégrer dans Windev Mobile.
En effet j'affiche juste une alerte après un période inactivité d'une (1) minutes.
voici le code:

1) - InactivityDetector.java

package com.dikens.verroullage_ecran;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Handler;
import android.os.Looper;
import android.view.MotionEvent;
import android.view.View;

public class InactivityDetector implements View.OnTouchListener {

    private static final long INACTIVITY_DELAY = 60 * 1000; // 5 minutes en millisecondes
    private Handler inactivityHandler;
    private Runnable inactivityRunnable;
    private AlertDialog.Builder alertDialogBuilder;
    private AlertDialog alertDialog;

    public InactivityDetector(final View rootView) {
        inactivityHandler = new Handler(Looper.getMainLooper());
        inactivityRunnable = new Runnable() {
            @Override
            public void run() {
               // Afficher l'alerte ici
               alertDialog.show();
            }
        };

        alertDialogBuilder = new AlertDialog.Builder(rootView.getContext());
        alertDialogBuilder.setMessage("Votre session va expirer.");
        alertDialogBuilder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {
               // Réinitialiser le délai d'inactivité lorsque l'utilisateur répond à l'alerte
               resetInactivityTimer();
            }
        });

        alertDialog = alertDialogBuilder.create();
        rootView.setOnTouchListener(this);

        // Démarre le minuteur pour la première fois
        resetInactivityTimer();
    }

    @Override
    public boolean onTouch(View view, MotionEvent motionEvent) {
        // Réinitialise le minuteur lorsque l'utilisateur interagit avec l'écran
        resetInactivityTimer();
        return false;
    }

    private void resetInactivityTimer() {
        inactivityHandler.removeCallbacks(inactivityRunnable);
        inactivityHandler.postDelayed(inactivityRunnable, INACTIVITY_DELAY);
    }
}

2) - MainActivity.java
package com.dikens.verroullage_ecran;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        View rootView = findViewById(android.R.id.content);
        InactivityDetector inactivityDetector = new InactivityDetector(rootView);
    }

}


Merci d'avance pour votre aide

Message envoyé le 10-01-2024 par popoy (France)  
Je t'ai répondu sur fekwx

Message envoyé le 17-01-2024 par dikens (Côte d'ivoire)  
Merci pour ton aide @Popoy
désolé j'étais souffrant


Pour répondre à ce message vous devez être membre

Entrée membre    Enregistrer




Retour © 1996-2024 forum.acam.ca