【问题标题】:iPhone detect that user moved up their deviceiPhone 检测到用户向上移动了他们的设备
【发布时间】:2012-04-04 22:07:19
【问题描述】:

我正在开发一个应用程序,用户在该应用程序中设置一些东西(不重要它是什么),然后放下手机。片刻之后,用户会再次拿起电话。我想检测用户何时拿起电话。我对使用加速度计不是很有经验。我尝试使用加速度计,但我注意到我会遇到问题,因为我正在寻找运动,即从一个位置变为另一个位置。如果有人知道如何做到这一点,将不胜感激。

谢谢,

【问题讨论】:

  • 所以基本上你想检测加速度计是否记录了什么?
  • 是的,但比这要复杂一些。加速度计必须检测到不仅仅是振动的运动(例如,如果手机是钢琴,则在弹奏时钢琴会振动)。

标签: iphone objective-c ios accelerometer core-motion


【解决方案1】:

您可以尝试这样的方法,当加速度计加速度等于您指定的值时触发您的操作。

- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration
{
     if(acceleration.y > 1.0f)
     {
         NSLog(@"acceleration > myValue");
     } 
}

This post may help you as well

【讨论】:

  • 谢谢,这成功了!我不敢相信我没有看到它是多么简单。
  • 注意:这在 iOS 5.0 中已被弃用。
  • 我们可以用一些资源消耗更少的方式来做到这一点吗?鉴于持续更新,加速度计将需要大量电池。是否有针对重大更改的特定回调?就像你拿起 iPhone6s 就亮屏一样,苹果在幕后做什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-01-31
  • 2011-04-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多