问题标签 [cmmotionmanager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1042 浏览

iphone - 计算沿 y 轴的方向变化率(角度测量)?

我想计算 iPhone 沿 y 轴方向的变化率。1.最初我需要将参考定义为y轴,2.然后测量定义参考的方向变化率(角度测量)。

CMAttitude 是否提供可靠的角度测量来实现这一点?或者我可以使用旋转矩阵或集成陀螺仪数据(我实现了这个方法,但由于陀螺仪的漂移它不起作用)。所以请建议我一个可靠的方法来完成这个工作?

先感谢您!

0 投票
1 回答
2482 浏览

iphone - 使用四元数计算 iphone 的偏航、俯仰和滚动?

我看到很多问题和文章都提到四元数可以用来从 iPhone 获得更好、准确和稳定的偏航、俯仰和滚动读数,而不是直接读取它的偏航、俯仰和滚动读数。但与此同时,我还没有看到任何在 iPhone 平台上实现四元数的合适方法。作为一个初学者,真的很难知道,这些四元数是如何工作的并在一段代码中实现它们?(很抱歉没有提供任何代码,因为我不知道它在苹果的 xcode 平台中是如何工作的)

所以请善意地回答我的问题,大多数用户都会从中受益!

提前致谢!

0 投票
0 回答
96 浏览

iphone - 如何创建一个类以将与运动相关的效果应用于视图?

相对新手,抱歉有点新手问题。我已经尝试寻找答案。

我编写了一种方法,根据用户拿着 iPhone 的角度,将视觉动画效果应用于视图控制器上的 UIImageView。基本上我使用 CMMotionManager 来提供一个角度,然后使用该角度通过更改其 bounds.center 来移动 UIImageView。当一切都卡在视图控制器中时效果很好,但我希望它更清洁和可重用。

所以我对 UIImageView 进行了子类化,向它添加了一个运动管理器、一个运动管理器块处理程序和操作队列,以及一些将设备角度映射到与 UIImageView 中的偏移相对应的数字的方法。我创建了一个自定义的 init 方法,它接受各种参数来控制视觉效果。然后就像将此类的实例作为子视图 (addSubview:) 添加到我的控制器的视图中一样简单。它甚至使用后台线程和自动释放池。滑溜溜的,我想。

虽然它看起来在视觉上可以工作,但出于多种原因(包括 Instruments 显示出不断增加的内存消耗),我认为这不是我应该插入 UIImageView 子类的内容。有没有更好的方法来构建这个?例如,与 UIViewController 不同,UIImageView 的子类没有 viewDidLoad/viewDidUnload/...appear/etc。这将让我开始和停止运动管理器更新;我应该能够为整个应用程序创建一个单一的运动管理器,而不是在我的图像效果类中实例化它。

我确实意识到每个应用程序必须只有一个 CMMotionManager 实例,并且已经实现了Jonathan 的方法,但是后来我发现自己需要从我漂亮的类中访问 appDelegate ,而从视图控制器中更容易做到这一点,而且它只是从那里螺旋向下。

我是要求太多,还是只是不理解一个非常简单的概念?

0 投票
2 回答
1468 浏览

iphone - CMMotionManager 不产生任何 .deviceMotions

我正在为我的公司开发一个 AR 应用程序,它运行良好,除了大约十分之一的设备。(所有 iphone 4 和 4s,5.1.1+)

当我们运行这段代码时:

我们在某些设备上得到了“设备运动处于活动状态,但没有收到任何设备运动”的固定块,但它似乎完全随机。

如果motionManager.deviceMotionActive为真,并且运动管理器存在,.deviceMotion 应该返回一个 CMDeviceMotion。但它只是返回零。

有谁知道可能导致这种情况的原因?检查正在我的

0 投票
2 回答
743 浏览

iphone - CoreMotion 中的内存泄漏

以下是我在 vievDidLoad 中的代码

在 Instruments 中,我在 XCode 4.5 中遇到内存泄漏,指的是 CMMotionManagerInternal 我的代码有什么问题?

0 投票
0 回答
727 浏览

ios - iOS iPhone 5 CMMotion deviceMotionUpdateInterval 问题

我已经在 iOS 6.0 和第 4 代 iPhone 和 iPod touch 上成功使用了 CMMotionManager。新 iPhone 5 的更新间隔似乎是指定的两倍。如果 kTIME_INTERVAL 为 0.0125,我看到的实际间隔约为 0.021。

当我将间隔设置为 0.0125 / 2.0 时,实际的计时器间隔接近 0.013,这正是我想要的。

有人在 iPhone 5 上看到与 CMMotionManager 类似的行为吗?

提前致谢!

0 投票
1 回答
616 浏览

iphone - 如何使用 iphone 磁力计值计算来自墙壁插座的电流电压值?

我想使用 iphone 计算通过壁式插座的电流。我正在使用 CMMotionmanagerFramework,我得到了 X、Y、Z 值,这些值我可以通过使用我想计算电压水平的那些值来计算周围的磁场的墙上插座。请给我答案。

0 投票
0 回答
189 浏览

gps - 加速度计没有被调用

我正在做一个有点奇怪的实现。我的应用程序连续使用 GPS 数据,并使用它来完成一些任务。我还实现了加速度计的东西来检测设备是静止的还是移动的。当设备静止时,我通过调用停止 GPS 获取stopUpdatingLocation,当设备移动时,我调用startUpdatingLocation。这在前台和后台都可以正常工作。

但是我希望我的应用程序在设备重新启动时在后台启动。这工作正常。我在 plist 中添加了“voip”键,并applicationDidFinishLaunch开始 GPS 获取代码并启动加速度计。

但我发现一旦设备保持静止(stopUpdatingLocation),加速度计就不会被调用。因此,我无法检测到设备移动。加速度计回调没有被调用。这是我正在使用的代码示例:

有人可以帮我解决这个问题吗?可能吗?

0 投票
1 回答
466 浏览

iphone - CoreMotion 崩溃:CLMotion 核心、CLGeomagneticModelProvider_Type

< 崩溃日志:异常类型:EXC_BAD_ACCESS (SIGSEGV) 崩溃线程:0

>

0 投票
1 回答
1546 浏览

ios - 在后台模式下实现的 Core Motion 加速度计的奇怪行为

我正在 iOS 上实现计步器。一个重要的要求是,即使应用程序进入后台模式(例如,设备被锁定或用户按下主页按钮),它也必须工作。您可以在 App Store 中看到这样的实现,例如 Nike+、Runtastic Pedometer 等。

一些 SO 帖子证实,这可以通过 Core Motion 实现,或者特别是CMMotionManager通过附加属性Required background modesset to location

我用下面的代码进行了快速测试,发现了一个奇怪的问题:

我在 iPhone 4S 和 iOS 6.1 上尝试了这段代码。当应用程序启动时,我按下主页按钮并摇动它(模拟步行)5 秒钟,然后再次打开应用程序。这些动作会重复几次。我得到的输出是:

我没有检查读数的正确性,但快速观察已经发现了一些问题。此应用程序第一次在后台模式下运行时没有读数(或有时只有一个读数)。

我在这里做错了什么?这是实现计步器的正确方法吗?