2015-09-25 42 views

回答

2

您可以使用此功能让运行应用程序包的名称:

public String foregroundPackage() { 
     ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE); 
     List<ActivityManager.RunningTaskInfo> runningTaskInfo = manager.getRunningTasks(1); 
     ComponentName componentInfo = runningTaskInfo.get(0).topActivity; 
     packageName = componentInfo.getPackageName(); 
     return componentInfo.getPackageName(); 
    } 
+0

谢谢,但是当我运行你的代码时,我只在任何应用程序中获得** com.l.launcher **。 –

+0

我不知道你是如何调用函数的,但我可以向你保证它会返回顶级应用程序包名称。 –

+0

例如,我有一个循环函数,每个5秒钟,我把你的代码在这个循环中获取名称。只有在我的应用程序,我得到正确的名称(** com.example.test **),但在其他应用程序,我得到这个:** com.l.launcher ** :( –

相关问题