如何检测任何类型的用户交互?

2024-03-14

安全问题: 我现在不知道这是如何发生的,但这个问题的读者会想到这个问题的解决方案是一种安全威胁。所以请记住,我感兴趣的所有数据都是测量用户进入/活动的时间。就这样。用户做了什么——我是NOT有兴趣!


我需要的是非常简单的概念,但我找不到解决方案。我想运行一个进程(在后台)并有一个用户交互的监听器。

因此,用户触摸屏幕 --> 我的方法被触发。

用户解锁手机 --> 我的方法被触发。

用户在物理键盘上键入 --> 我的方法被触发。

简而言之,当手机静止在桌子上时,我的方法不会被触发:-)请注意,交互是与整个手机进行的,而不是与我的应用程序进行的,而且我对用户输入字母“K”不感兴趣,我是我什至对用户输入的内容不感兴趣,我只关心用户以某种方式使用手机。

顺便提一句。用户边走边听音乐的状态(手机放在口袋里)——这不是交互。

我正在寻找的是一个触发器——比如INTERACTION_DETECTED,或者(相反)一个回调方法,其设置如下reportInactiveUser(10*1000)如果用户在 10 秒内不活动,则会调用该函数。

QUESTION如何检测用户交互?

目的:测量手动使用手机的时间。

(缺乏)进展

我发现BatteryStatsImpl可以保存我需要的数据。它的实例由BatteryStatsService,但是不允许任何访问它,仅IBatteryStats而它只有一个有趣的方法——getStatistics并且输出不包括用户活动计数器(或者它们全为零;我设置了所有权限)。所以,到目前为止——运气不好。

所有调用都必须通过反射进行,因为这些类无论如何都不可用;-)。


为此,您需要拦截与手机的物理交互。

对于屏幕触摸,这个包 http://developer.android.com/reference/android/gesture/package-summary.html会派上用场的。 *您可以使用this http://developer.android.com/reference/android/view/GestureDetector.html监听屏幕上的手势。

对于物理按钮触摸,我建议您看看this http://developer.android.com/reference/android/inputmethodservice/InputMethodService.html.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检测任何类型的用户交互? 的相关文章

随机推荐

  • 远程连接到 Amazon RDS MySql

    我正在尝试从我的计算机连接到 Amazon RDS 上的 MySql 使用MySql WorkBench or HeidiSql甚至是console Mysql exe我一直收到这个错误 ERROR 2003 HY000 Can t con
  • 当一个接口“继承”另一个接口时,您怎么称呼它?

    如果我有 B 类 A 我说 B类遗传A 类 或 B 类派生自 A 类 但是 如果我有 class B ISomeInterface 说 B继承ISomeInterface 是错误的 正确的说法是 B实施ISomeInterface 但是 说
  • scipy.curve_fit() 返回多行

    我是 python 新手 尝试使用以下代码来适应数据集分布 实际数据是一个包含两列的列表 预测市场价格和实际市场价格 我试图使用scipy curve fit 但它给了我在同一个地方绘制的许多线条 任何帮助表示赞赏 import the n
  • 我可以从 Dapper 查询返回多个派生类型的集合吗

    我有一个与此类似的类结构 public abstract class Device public int DeviceId get set Additional Properties public class DeviceA Device
  • Mysql:将 NOT NULL 列更新为 null 时未收到错误

    为什么mysql在更新非空列时接受空数据 然后将数据转换为0 我期待一个错误 但它没有显示出来 如果有人尝试将非空列更新为空 我如何得到错误 我需要它 以便在出现错误时可以回滚事务 数据库中是否需要任何配置来执行此操作 谢谢 您还没有指定您
  • 如何正确检索表 ID

    根据数据库理论 数据库中的任何表都可以通过其完全限定名称来成功识别 catalog name schema name table name 在 SQL Server 中检索表 id 的方法是 SELECT object id table n
  • 默认移动构造函数与默认复制构造函数与默认赋值运算符

    为什么 C 编译器对自动生成的移动构造函数比对自动生成的复制构造函数或赋值运算符有更多限制 仅当用户未定义任何内容时 才会生成自动生成的移动构造函数 即 构造函数 复制 赋值 析构函数 仅当用户未分别定义复制构造函数或赋值运算符时 才会生成
  • 日期查询适用于 _id 但不适用于日期值 - MongoDB

    所以 我几个小时以来一直在尝试 但没有得到任何结果 我有一个 MongoDB 集合 它有一个日期值 scrape systemTime 我将其插入scrape systemTime new Date 我试图通过使用以下方法获得早一周的结果
  • 与逃亡者一起离开差异视图

    有了 vim 逃亡者 有没有一种简单的方法来 取消分割 Gedit 返回工作树中的当前对象 E g when in Gcommit Gstatus buffers you would press D to enter side by sid
  • 嵌入式使用的轻量级(解)压缩算法

    我有一个带有图形用户界面的低资源嵌入式系统 该界面需要字体数据 为了节省只读存储器 闪存 需要压缩字体数据 我正在寻找一种用于此目的的算法 要压缩的数据的属性 每个像素 8 位的矩形像素图的透明度数据 字体中通常有大约 200 300 个字
  • 我该如何解决这个警告? “遇到两个拥有相同钥匙的孩子`.$1/.$2`”

    我正在使用导入 react native form select picker 在我的反应本机应用程序中进行选择输入 并且代码工作正常 但它仍然给我一个警告 遇到两个具有相同密钥的孩子 1 2 那么我该如何解决这个问题有人可以帮忙吗 下面是
  • C 标准库函数名称中的“f”代表什么?

    什么是fC 标准库函数的名称代表什么 我注意到很多函数都有一个f以他们的名义 这对我来说真的没有意义 例如 fgets fopen printf scanf sqrtf等等 你的问题总体来说太笼统了 但我可以解释一些例子 fgets htt
  • 在不同列中显示列表项元素

    我正在尝试更改 DataLife Engine 模板的外观 我想知道您是否可以帮助我进行对齐 我有一列显示一些信息 如下所示 div class short description div class table ul class tabl
  • const 记录参数的 [Ref] 属性有用吗?

    对于最新的 Delphi 版本 Berlin 10 1 24 Ref 属性真的有必要吗 我问这个是因为在线文档 http docwiki embarcadero com RADStudio Berlin en Parameters Delp
  • 迭代 Doctrine 的变更集

    我正在尝试记录用户在我的网站上执行的特定操作 并让侦听器检查某些实体是否正在更新 如果是这样 我的目标是记录他们正在编辑的字段 但不是所有字段 有些字段并不重要 或太长 我在将更改集保存到数据库时遇到问题 这就是为什么我想过滤重要字段 这可
  • 当用户填写表单时运行 javascript

    我是 Google Apps 脚本新手 需要帮助 我正在努力实现以下目标 在 Google 表单中设置文本框失去焦点的触发器 此事件中的代码将是 获取文本框的值 设置文本框的值 不幸的是 目前 Google Apps 脚本和 Google
  • 不带斜体的 MathJax 字体

    我想用MathJax http www mathjax org使用常规字体 而不是斜体 我尝试加载不同的 STIX 字体 但使用 MathJax 渲染的符号始终转换为斜体 我查过STIX 字体常见问题解答页面 http www stixfo
  • 创建一个html5音频并播放它不起作用

    我想动态创建一个 html5 音频并播放它 代码如下 function playAnotherMusic playUrl var audioElement document createElement audio audioElement
  • 如果出现错误,请停止在 jquery 中提交表单

    这是我的代码 http jsfiddle net Xk38X 6 http jsfiddle net Xk38X 6 register click function if company f val length 0 company f c
  • 如何检测任何类型的用户交互?

    安全问题 我现在不知道这是如何发生的 但这个问题的读者会想到这个问题的解决方案是一种安全威胁 所以请记住 我感兴趣的所有数据都是测量用户进入 活动的时间 就这样 用户做了什么 我是NOT有兴趣 我需要的是非常简单的概念 但我找不到解决方案