问题标签 [usagestatsmanager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2123 浏览

android - 获取前台应用 API 级别 21

由于ActivityManager.getRunningTasks已从 API 级别 21 弃用。所以我决定改用UsageStatsManager。但是getSystemService(USAGE_STATS_SERVICE)只能从 API 级别 22 获得。这意味着我只能在 API 级别 >= 22 和 <= 20 的设备中获取前台包名称。API 21 设备呢?

0 投票
1 回答
291 浏览

android - 使用 UsageStatsManager 监控在 Android 应用上花费的时间

我正在尝试实现一个 Android 应用程序,当用户在 Facebook 或 Instagram 等社交媒体应用程序上花费 X 时间时,它可以通知用户。我知道来自 UsageStatsManager 的 queryUsageStats() 是首选方式,但根据Android 文档,间隔仅持续不到一天。是否有可能每隔一两个小时查询一次,以便及时发送通知?

0 投票
4 回答
7664 浏览

java - Android:UsageStatsManager 未返回正确的每日结果

我试图从 查询UsageStatsUsageStatsManager目的是返回每天使用的所有应用程序包以及使用了多长时间。

编码:

我有一个警报,每天在午夜之前触发并查询的使用情况,然后存储返回的数据。起初一切似乎都工作正常,我得到了包结果和它们的活动时间,但是我添加了一个每小时检查一次结果的功能,在这里我发现了一个奇怪的发现。

结果似乎在不同时间重置,而不是在午夜,考虑到我将其用作搜索参数UsageStatsManager,这是我所期望的。INTERVAL_DAILY

从我保存包“时间”的数据来看,结果似乎正在重置(大致时间):

  • 凌晨3点
  • 正午
  • 下午 3 点
  • 午夜

我意识到包裹时间重置时间之间存在相关性,但这是否意味着发生?

我已经看过以下线程,我从中获得了很多信息: 如何使用 UsageStatsManager?

因此: Android UsageStatsManager 产生错误的输出? 在评论中提到返回的数据queryUsageStats不可信,并且正在返回随机结果。

我是否遗漏了一些简单的东西或UsageStatsManager无法正常运行?

0 投票
2 回答
813 浏览

java - java.lang.NoClassDefFoundError: android.app.usage.UsageStatsManager 在 android

嗨,我正在使用 UsageStatsManager api 向用户显示一些使用列表。但我面临一些问题。我在许多设备中都遇到了这个错误,在某些设备中它工作正常。我仍在浏览这个问题。你们能帮我解决这个问题吗?

错误:

我用过的代码:

显现:

检查我的应用程序

0 投票
0 回答
1057 浏览

android - Android API UsageStats getLastTimeUsed 不正确?

我正在尝试使用最近在 Android 中引入的 UsageStatsManager 类来阅读应用程序的上次使用时间。

但是有一个问题。它为大多数应用程序提供了正确的结果。但对于某些调用应用程序:appUsageStats.get(appInformation.packageName).getLastTimeUsed()它返回一个不正确的 4 位数毫秒。

附件是评估窗口的屏幕截图,显示真正的呼叫者应用程序的 8738。这是一个错误还是我做错了什么?

在此处输入图像描述

注意:作为观察结果,当mLastTimeSystemUsed与 相同时,此 API 返回正确的结果mLastTimeUsed。仅供参考。

下面的代码片段:

UStats 类方法:

0 投票
1 回答
2217 浏览

android - UsageStatsManager 开始从新通知返回包名,而不是当前正在运行

我之前开发了用于应用程序锁的 android 应用程序,该应用程序运行在获取当前运行进程的包名称的想法上,用于低于棒棒糖版本和高于棒棒糖版本。但是现在在 Marshmallow 中,由于通知,存在获取正确包名称的问题。是的,当通知到来时,当前运行进程的包名将更改为通知来自的应用程序包名。简而言之,当我在 Messenger 上时,突然 whatsapp 通知来了,顶级运行进程的包名称将是 com.whatsapp。我的应用程序锁将打开。我正在使用这些方法来获取当前正在运行的应用程序的包名称:

有什么方法可以让我只在用户界面上获取正在运行的应用程序的包名称,或者从通知中过滤它并将其删除。此问题仅发生在 Marshmallow 中。

0 投票
2 回答
2491 浏览

android - 使用 UsageStatsManager 所需的权限

我正在尝试使用 UsageStatsManager。我了解我需要将以下内容放入我的 Android 清单中:

但是,当我尝试这样做时,Eclipse 会引发以下错误:与元素类型“uses-permission”关联的属性“tools:ignore”的前缀“tools”未绑定。

如何正确声明权限?

0 投票
0 回答
737 浏览

android - 如何在android中查询usagestatsmanager的每日、每周或每月使用情况?

我正在使用一个 android 应用程序,我想在其中使用每日、每周、每月和总体摘要报告选项跟踪所有已安装应用程序的使用情况。为此,我使用usagestatsmanager,但我得到的结果在每日或每月使用中不正确。所以任何人请帮助我如何查询usagestatsmanager的每日、每周或每月使用情况?我使用的查询如下: -

日常使用

每周使用

每月使用

0 投票
2 回答
1729 浏览

android - 在 Android 6.0.1 中获取前台应用程序。UsageStatsManager.queryusagestats 在 6.0.1 版本中返回空列表

以下代码在 6.0 版之前运行良好

现在 queryUsageStats 返回空列表。

有没有其他方法可以获取前台应用程序?

注意:添加了以下权限以检索usagestats

提前致谢。

0 投票
0 回答
717 浏览

android - 使用情况统计服务 - queryEvent 在 android 5 设备上不起作用(虽然不是全部)

我使用以下代码在我的应用程序中获取当前的前台应用程序包名称。我有一个运行 android 5 的用户,它总是返回 null (我有其他运行 android 5 的用户确认我的代码正在运行!)。用户安装我的应用程序,授予权限(我检查了它们,我的应用程序具有使用权限USAGE_STATS_SERVICE,然后我调用getCurrentForegroundPackage它并返回 null。应用程序在大约一分钟之前运行......它正在许多其他设备上运行......在哪里可能是问题吗?有什么想法吗?

代码 - 获取前台应用程序包

代码 - 检查我的应用程序是否有权限