2012-11-13 2 views
1

Je suis en train d'écrire un processus qui tue les applications en cours d'exécution en arrière-plan, mais les applications apparaissent-elles encore dans la liste des dernières applications et non matriçage:essayant de tuer une application

ActivityManager am = (ActivityManager) getApplicationContext().getSystemService(
        Context.ACTIVITY_SERVICE); 

      List<ActivityManager.RunningTaskInfo> processList = am.getRunningTasks(5); 
for(int i=0; i<processList.size();i++){ 
       cProcess = processList.get(i).baseActivity.getPackageName(); 
       if(!allowedApps.contains(cProcess)){ 
        am.killBackgroundProcesses(cProcess); 
        Log.v("","---------------------------------------------------------kill-----"+cProcess); 
       } 
      } 
+5

Ne faites pas cela. Android a une gestion unique de la durée de vie des processus, et essayer de lutter contre ce mécanisme sera une bataille perdue. –

+0

non je suis en train de construire un mode lanceur/kiosque pour un client de détail et nous essayons d'empêcher la tablette d'accéder à certaines applications tierces – erik

+0

Question idiote, mais avez-vous l'autorisation 'KILL_BACKGROUND_PROCESSES' dans votre manifeste? Deuxièmement, il peut y avoir de meilleurs moyens de sécuriser une application en mode kiosque. Rédaction d'un programme "lanceur" sans icônes de l'application tierce (ou un plateau d'application), pour un. Remplacer les boutons du système (voir [ici] (http://stackoverflow.com/questions/11882581/android-is-it-possible-to-disable-la-long-click-of-home-button-to-avoid- le-t/12652490 # 12652490) est un autre. Tuer des tâches tierces n'empêche pas vraiment les gens d'y avoir accès, il y a de meilleures façons de le faire. – Geobits

Répondre

2

Il est (à mettre à la légère) une différence d'opinion sur la nécessité de tuer des applications/tâches. Je n'en ai jamais utilisé un, parce que je n'en ai jamais vu le besoin. Certaines personnes peuvent ressentir différemment. Je suis d'accord que la meilleure façon de "sécuriser" un périphérique en mode de détail est de désactiver des parties de l'interface utilisateur qui permettrait à quelqu'un d'exécuter une application tierce.

1

Non, je suis la construction d'un mode de démarrage/kiosque pour un client de détail et nous essayons d'obtenir la tablette d'accéder à certaines applications tierces

Ceci est impossible, en toute sorte de manière fiable , sauf via un firmware personnalisé.

+0

@ CommonsWare J'ai l'impression que vous continuez à suivre mes messages sur mes hacks .. je suis d'accord avec vous sur cette note, mais notre client ne nous laissera pas rooter l'appareil, donc j'ai réussi à créer une tâche système nav et via un "travail de hack total exécutable" forcer l'utilisateur dans un écran de mot de passe afin d'accéder aux paramètres du système .. – erik

Questions connexes