2011-06-21 3 views
0

Je rencontre un problème que je ne peux pas résoudre pour le moment.
Le but du code est de surveiller quelles applications sont en cours d'exécution.
J'ai utilisé le code suivant et enregistré le nom du package résultant, cela a fonctionné.Moniteur en cours d'exécution Application

ActivityManager am = (ActivityManager) context.getSystemService(Activity.ACTIVITY_SERVICE); 
String packageName = am.getRunningTasks(1).get(0).topActivity.getPackageName(); 
Log.i("TTWYMonitor", packageName); 

Mais j'utiliser ce code dans un BroadcastReceiver, rien ne se passait. Dans manifest, j'ai déclaré un récepteur d'intention android:name=".MonitorApplication.
Que dois-je faire, alors? S'il vous plaît donner votre suggestion.

Yahel: Merci et désolé pour ma question informelle.

+1

Logcat de l'erreur et votre code plz – ingsaurabh

+0

ActivityManager activityManager = (ActivityManager) this.getSystemService (ACTIVITY_SERVICE); <<<<< J'utilise cette commande et cela ne fonctionne pas dans BroadcastReceiver. C'est pourquoi. Ma question peut être drôle mais soyez patient et répondez-moi. – Renegade

+0

Vous devez fournir le code de votre question et le message d'erreur généré par votre code. Modifiez votre question en cliquant sur le lien "modifier" situé sous son texte. – Yahel

Répondre

0

remplacer le terme « activité » dans les paramètres de getSystemService avec « Contexte »:

ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); 

Je l'ai testé et fonctionne très bien pour moi!

Questions connexes