嗨,
我正在开发一个应用程序,我必须在其中获取running time
设备上安装的所有应用程序。
那么,是否可以知道别人的应用程序在手机上运行了多长时间呢?例如:gmail 应用程序在手机上运行了多长时间?
有没有API
为此,或者我们必须开发自己的逻辑才能使其发挥作用???
您可以使用 ActivityManager.RunningServiceInfo.activeSince 获取每个服务的启动时间列表,如下所述here http://developer.android.com/reference/android/app/ActivityManager.RunningServiceInfo.html#activeSince。这是一个检索所有服务进程的时间的片段。
ActivityManager activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningServiceInfo> services = activityManager.getRunningServices(Integer.MAX_VALUE);
long currentMillis = Calendar.getInstance().getTimeInMillis();
Calendar cal = Calendar.getInstance();
for (ActivityManager.RunningServiceInfo info : services) {
cal.setTimeInMillis(currentMillis-info.activeSince);
Log.i(TAG, String.format("Process %s with component %s has been running since %s (%d milliseconds)",
info.process, info.service.getClassName(), cal.getTime().toString(), info.activeSince));
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)