这个问题不完全是关于代码,而是关于实现。
我正在开发一个需要检查手机是否在口袋里的应用程序。我有一个简单的算法来检测步行时的用户步数。问题是手中的运动也可以注册为一个步骤,例如,当用户运行应用程序并将从他/她执行此操作到手机放在口袋中的时间点归零时,应用程序会注册几个步骤.
我的想法是检查接近传感器,看看手机是否在口袋里。
我对加速度计传感器所做的是,我继续读取缓冲区中的加速度计值,当缓冲区已满时,我计算步数(在计算时,缓冲区仍在接受新的加速度计读数)。
因为我听说接近传感器是基于中断而不是基于轮询的(就像 acc 传感器一样)。我该如何协调这两者?
是否可以肯定地说,如果我在将 acc 值写入缓冲区之前检查接近度,并在计算开始时再次检查它,如果接近度不在 FAR 模式下,我可以假设手机在口袋里?
欢迎任何建议!