【发布时间】:2015-06-16 07:46:47
【问题描述】:
我正在使用 UsageStatsManager API 来获取特定时间间隔的使用统计信息。如果我使用预定义的时间间隔,即 INTERVAL_DAILY、INTERVAL_WEEKLY、INTERVAL_MONTHLY、INTERVAL_YEARLY,一切正常。但是如果我想查看过去 2 或 3 小时的数据,我会得到今天一整天的数据。我曾尝试使用 Calendars 和 System.currentTimeMillis() 但这并没有给我过滤结果。
日历方法:
Calendar startCalendar = Calendar.getInstance();
startCalendar.add(Calendar.HOUR_OF_DAY, -2);
Calendar endCalendar = Calendar.getInstance();
并将其传递给 queryUsageStats 方法,如下所示:
usageList = usm.queryUsageStats(interval, startCalendar.getTimeInMillis(), endCalendar.getTimeInMillis());
其中间隔为 INTERVAL_BEST。
System.currentTimeMillis() 方法:
long startTime = System.currentTimeMillis() - 7200*1000 // 7200 seconds i.e. 2 hrs
long endTime = System.currentTimeMillis();
像上面一样将它传递给 queryUsageStats :
usageList = usm.queryUsageStats(interval, startTime, endTime);
interval 又是 INTERVAL_BEST。
我想知道是否可以获取此持续时间(即不到一天)的数据,因为尚未正确记录 INTERVAL_BEST 以包含此信息。任何帮助将不胜感激,因为我被困在这个问题上。
【问题讨论】:
-
如果投反对票的人可以评论原因或回答这个问题会很有帮助。