2010-07-03 5 views
1

Je développe un logiciel de stockage de mot de passe. Pour entrer dans l'application, nous devons nous connecter avec des détails valides. Maintenant, lorsque j'appuie sur la touche d'accueil, l'application doit se connecter automatiquement, puis recommencer à zéro du point de vue de la sécurité. Il devrait se déconnecter chaque fois que la touche d'accueil est enfoncée. Comment est-ce que je fais?Application de sécurité

+0

Vous pouvez essayer d'utiliser [OnPause] (http://developer.android.com/reference /android/app/Activity.html#onPause()) pour se déconnecter –

Répondre

0

L'écoute de la touche d'accueil à appuyer n'a pas beaucoup de sens sur Android car l'utilisateur peut quitter votre application de différentes manières. Ce que vous pouvez faire à la place est de surcharger onStop() ou onPause() en fonction de votre niveau de paranoïa, et de vous déconnecter de l'utilisateur dans cet événement.

Vous trouverez plus de détails sur le cycle de vie d'une activité dans la documentation officielle: http://developer.android.com/guide/topics/fundamentals.html#actlife

Je vous suggère de remplacer ces deux méthodes avec une mise au point à l'intérieur, essayez votre application et de décider où vous devez mettre votre fermeture de session() code.

@Override 
public void onPause() { 
    super.onPause(); 
    Log.d("MyTestActivity", "onPause()"); 
} 

@Override 
public void onStop() { 
    super.onStop(); 
    Log.d("MyTestActivity", "onStop()"); 
} 
0

Vous pouvez implémenter cela en ayant un écouteur pour bouton « home », à l'intérieur duquel l'action est à quelque chose de similaire: Gardez à l'esprit qu'il n'y a pas listner pour la maison. Mais vous pouvez chercher un OnStop()

protected void onStop() 
{ 
    super.onStop(); 
    deleteFiles(cacheDir); 
} 

Dans l'écouteur appeler les DELetefiles (cacheDir);

private void deleteFiles(File dir){ 
    if (dir != null){ 
    if (dir.listFiles() != null && dir.listFiles().length > 0){ 
    // RECURSIVELY DELETE FILES IN DIRECTORY 
    for (File file : dir.listFiles()){ 
    deleteFiles(file); 
    } 
    } else { 
    // JUST DELETE FILE 
    dir.delete(); 
    } 
    } 
} 

Autorisations: android.permission.CLEAR_APP_CACHE android.permission.DELETE_CACHE_FILES

Reportez-vous: How can I clear the Android app cache?

Questions connexes