【问题标题】:Utilizing the M7 chip in the iPhone5S [closed]在 iPhone5S 中使用 M7 芯片 [关闭]
【发布时间】:2013-11-07 12:59:38
【问题描述】:

我想知道是否有人能指出我在 iPhone5S 及更高版本中使用 M7 芯片的正确方向。

我想知道它是否只是在您使用通用核心运动 API 时自动使用,还是有一组特定的 API 可供使用?

最后我在网上阅读一些文章时注意到它保留了一些历史运动数据,任何人都知道如何访问它或者任何人都可以指出正确的方向吗?

【问题讨论】:

    标签: iphone api ios7 core-motion apple-m7


    【解决方案1】:

    您要查找的两个主要类是CMMotionActivityManagerCMMotionActivity。第一个允许您查询历史数据和管理运动。第二个让您可以访问不同的、更具体的运动类型。

    这两个类仅在 iOS 7 上可用。首先使用-[CMMotionActivityManager isActivityAvailable] 确定运动是否可用。我没有找到任何关于它的文档,但我的猜测是该方法只会在具有 M7 芯片(或支持运动活动报告的未来芯片)的设备上返回 YES

    【讨论】:

    • 真的非常感谢,所以只是跟进一下,使用这两个类我是直接使用m7吗?但使用其他核心运动类/api我不是吗?最后,我认为 M7 适用于所有核心运动信息 gps/指南针/加速度计/陀螺仪,但它看起来只对上述两个类有好处?再次感谢。 Apple 对 M7 开发有任何介绍吗?
    • 这些类需要 M7 才能运行。但是,我相信所有 Core Motion 工作现在都在 M7 上完成,因此您使用的任何其他类可能也会使用 M7(如果可用)。如果它不可用,这些类可能会退回到使用 A 芯片系列的旧实现。最接近 M7 编程指南的可能是 Core Motion 编程指南,因为 Core Motion 在其实现中使用 M7,用户无法直接访问 M7——只能通过 Core Motion。
    • 这很有趣,所以我猜(除了电池寿命)M7 的旗舰功能是这种计算步数的能力,这是以前没有的,对吧?
    • @JohnWoods:差不多,尽管它使检测自动运动之类的事情变得容易得多。这可以在之前完成(检查用户的速度,基于此做出假设等),但现在它只是 CMMotionActivity 上的一个属性。
    • 非常感谢斯科特。非常感谢这个信息。
    【解决方案2】:

    如果您正在寻找历史数据,那么研究一下这个特定的函数可能会很有价值: queryStepCountStartingFrom:to:toQueue:withHandler: 它是 CMStepCounter 的一部分,仅适用于配备 M7 的手机。来自文档:

    This method runs asynchronously, returning immediately and delivering the 
    results to the specified handler block. The system stores only the last
    seven days worth of step data at most. If there are no samples for the 
    specified range of time, a value of 0 is passed to the handler block.
    

    希望这会有所帮助!

    【讨论】:

    • 抱歉显示不稳定,我想我需要学习如何 Stack Overflow。
    猜你喜欢
    • 2014-01-23
    • 2012-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多