我可以获得应用程序的运行时间吗? [Android]产品

时间:2016-05-23 09:52:17

标签: java android

我有兴趣在Android中获取任何应用程序(不是我自己的)的运行时间。有没有办法做到这一点?更具体地说,我对终身运行(自安装以来)和自上次启动以来都感兴趣。

谢谢!

1 个答案:

答案 0 :(得分:0)

我认为您还可以监视前台应用程序,例如,您可以创建一个检查应用程序列表并检查状态的计划服务。

ActivityManager mgr = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> allTasks = mgr.getRunningTasks(showLimit);
/* each all applications */
for (ActivityManager.RunningTaskInfo aTask : allTasks) 
{                  
    Log.i("MyApp", "Task: " + aTask.baseActivity.getClassName()); 

}

你可以找到关于RunningTaskInfo对象的documentation here

可能的监控服务包括:

ActivityManager mgr = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningServiceInfo> allTasks = mgr.getRunningServices(showLimit);
/* each all service */
for (ActivityManager.RunningServiceInfo aTask : allTasks)
{
    Log.i("MyApp", "Task: " + aTask.activeSince);

}