如何识别Android中的TAP(摇晃)模式?

时间:2012-04-20 13:18:47

标签: android touch design-patterns accelerometer

我想在Android设备上捕获“TAP”。例如,假设设备在用户的口袋中。然后他用一个特定的图案从外面的外面触摸了两次手机。比如用“TAP - TAP”这两个/三个手指击打。我想抓住这个。

我猜,使用加速度计应该可以实现。现在,我可以阅读,X,Y,Z ......但我怎么能认识到它是'TAP-TAP'?有可能吗?

或者,还有其他方法可以实现吗?感谢。

1 个答案:

答案 0 :(得分:0)

事实是当用户走路时(特别是如果他有宽松的口袋)从TAP TAP那里分离定期晃动可能非常困难。它应该像用户走路或跑步一样工作吗?

为了达到这个目的,我首先考虑加速度计的持续时间,以及那些相同加速度测量的TAP TAP发生率。注意特殊操作的最佳方法是设置模式。这是我能想到的第一个例子(非常基本的):

  • 在某个加速度计轴上达到阈值(平均值+ OFFSET),可以将其视为第一次点击。
  • 价值回归平均值。
  • 达到相同的阈值 - 即在X毫秒之前
  • 检测到行动。

所有工作都在于能够找到正确的模式和相应的算法,因为他们知道加速度计对噪声很敏感(特别是在口袋里)。