1

我试图每隔 15 分钟监控一次设备和应用程序的数据使用情况。我发现 Android 操作系统每 2 小时汇总一次数据使用情况(开发人员文档中未提及)。使用方法 queryDetailsForUid() 找到聚合时间逻辑。是否存在任何其他方法来查找聚合时间?

案例1: 假设最后一次聚合时间是1:30。然后,对于我的 querySummary(),开始时间为 2:00,结束时间为 2:15(当前时间),响应将是从 1:30 到 2:15 的数据使用情况。对于开始时间 2:15 和结束时间 2:30(当前时间)的 querySummary(),响应将是从 1:30 到 2:30 的数据使用情况。为什么它会这样?它应该在给定的时间间隔内返回数据使用情况。

案例 2: 假设上次聚合时间是 3:30,那么 Query1:对于我的 querySummary(),开始时间为 2:00,结束时间为 2:15,响应将是从 1:30 到 3:30 / 8 的数据使用. Query2:对于我的 querySummary(),开始时间为 2:15,结束时间为 2:30,响应将是从 1:30 到 3:30 / 8 的数据使用情况。即;Query1 的响应 = Query2 的响应注:8 来自 120 分钟 /(结束时间 - 开始时间)

为什么它只是简单地划分数据使用量?假设我从 2:00 到 2:15 开启了飞行模式。应用 X 从 1:30 到 3:30 的数据使用量为 80MB。当我使用 querySummary() 从 2:00 到 2:15 查询 app X 的数据使用情况时,它会返回 80/8 = 10MB,这是错误的,此时间间隔内的 app X 数据使用情况为 0。

案例 3: 假设最后一次聚合时间是 3:30,那么,从 3:30 到结束时间 4:30 的 app-wise 数据使用量之和不等于开始时间 3:30 和结束时间 4:30 的 querySummaryForDevice 响应. 为什么?

4

0 回答 0