Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone CMMotionManager不生成任何.DeviceMotion_Iphone_Objective C_Augmented Reality_Cmmotionmanager - Fatal编程技术网

Iphone CMMotionManager不生成任何.DeviceMotion

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

我正在为我的公司开发一款AR应用程序,除了大约十分之一的设备外,它工作得很顺利。(所有iphone 4和4s,5.1.1+)

当我们运行此代码时:

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];