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