如何获取应用程序中在设备上运行的所有活动的列表。
例如:包含PDF生成和电子邮件活动。
我可以使用以下代码检查活动:

ActivityManager am = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);

     // get the info from the currently running task

     List< ActivityManager.RunningTaskInfo > taskInfo = am.getRunningTasks(1);

     Log.d("topActivity", "CURRENT Activity ::"

             + taskInfo.get(0).topActivity.getClassName());

     ComponentName componentInfo = taskInfo.get(0).topActivity;

   componentInfo.getPackageName();

但是,这将提供有关正在运行的活动的信息,该活动是顶级活动。
我的想法是列出正在运行的活动,以便我的第三方应用程序可以在设备上运行它。所以我基本上需要应用程序中所有正在运行的活动。

最佳答案

我发现applifecyclehandler是一个很好的解决方案,如this post中所述。我使用它主要是为了在用户使用完应用程序后保持计数和清理,但是您可以使用一个数组来实现它,在这个数组中存储所有正在运行的活动,这样您就可以随时调用以了解正在运行的活动。

10-04 12:28