我正在开发一款需要高速运动数据(约80hz)的应用程序。从iOS 10开始,我的应用程序报告运动数据仅以67 Hz进入。在iOS 7到9中,相同的代码报告稳定的80到81 Hz。
CMMotionManager中是否有任何改变会导致这种情况变慢?
答案 0 :(得分:1)
这似乎是iOS 10中的错误。如果在CMMotionManager accelerometerUpdateInterval上设置的请求的Hz设置介于60Hz和89 Hz之间,则运动数据将以67 Hz的频率进入。如果设置为90Hz或更高,运动数据将以100Hz进入。低于60赫兹的任何行为都与iOS 10之前的行为相同。
编辑:我在iOS 9和iOS 10上对更广泛的updateIntervalSettings选项进行了更多检查。我发现任何低于50赫兹的设置都能按预期工作,但如果你设置的速度高于此值,你会得到意想不到的更新运动传感器的间隔。我发现的最严重错误是在iOS 9上,当更新间隔设置为80 Hz时,传感器报告的频率为47 Hz。