Iphone CMMotionManager不生成任何.DeviceMotion
我正在为我的公司开发一款AR应用程序,除了大约十分之一的设备外,它工作得很顺利。(所有iphone 4和4s,5.1.1+) 当我们运行此代码时:Iphone CMMotionManager不生成任何.DeviceMotion,iphone,objective-c,augmented-reality,cmmotionmanager,Iphone,Objective C,Augmented Reality,Cmmotionmanager,我正在为我的公司开发一款AR应用程序,除了大约十分之一的设备外,它工作得很顺利。(所有iphone 4和4s,5.1.1+) 当我们运行此代码时: CMDeviceMotion *d = motionManager.deviceMotion; if (d == nil && motionManager.deviceMotionActive && motionManager != nil) { DLog(@"Device motion is
CMDeviceMotion *d = motionManager.deviceMotion;
if (d == nil && motionManager.deviceMotionActive && motionManager != nil) {
DLog(@"Device motion is active, but no device motion recieved");
}
我们在一些设备上得到了“设备运动处于活动状态,但未接收到设备运动”的实心块,但它似乎完全是随机的
如果motionManager.deviceMotionActive
为true,且运动管理器存在,则.deviceMotion应返回CMDeviceMotion。但它只返回零
有人知道这是什么原因吗?这张支票正在我的银行里进行
- (void)onDisplayLink:(id)sender
打电话给
[motionManager startDeviceMotionUpdatesUsingReferenceFrame:someFrame];
或
方法开始更新并通过读取deviceMotion属性定期访问CMDeviceMotion对象。漫游一段时间后,我们发现这是由于很少发生硬件/固件错误造成的。最明智的做法是检查motionManager.deviceMotion是否为零,以及motionManager.deviceMotionActive是否为真。在iphone 4和4s中都可以找到有缺陷的设备。您是否尝试过检查对象内存分配/释放。可能是有问题。同时检查此链接:当使用基于块的方法时,您是否有相同的问题?多么令人惊讶。。。。另一个苹果虫。很抱歉听到你在上面浪费了这么多时间。你是如何解决这个问题的?我面临着同样的问题,不知道该怎么办。我检测到它并发出警告。有时使用内置的指南针应用程序校准传感器会有所帮助,但有时不会。。。
[motionManager startDeviceMotionUpdates];