iPhone可以在没有Watch App的情况下从Watch中检索加速度计数据吗?

时间:2018-06-08 17:16:10

标签: ios swift accelerometer

寻找一个简单的答案。我将构建一个需要来自用户手表的加速计数据的应用程序。

我的问题是:要让iPhone从用户手表中检索加速计数据,我是否还需要构建一个Watch应用程序?我相信答案是否定的,因为我发现了另一个SO问题/答案,表明您可以在没有Watch App的情况下每5分钟读取心率数据。以下是参考链接:

Read Heart Rate in Apple Watch Series 3 without creating an app on the Watch

1 个答案:

答案 0 :(得分:2)

要访问Apple Watch传感器,您需要Apple Watch应用
由于Apple Watch上的后台代码执行能力有限,用户必须明确地与应用程序交互以启动传感器。

基本上,iPhone应用程序只能访问自己的传感器。 Apple Watch应用也是如此。

现在CMMotionManager无法接入其他设备的传感器。

心率可用的原因是HealthKit。 该数据会定期发送给iPhone 您基本上正在与HealthKit进行沟通,以获得最新的心率,这是最近从Apple Watch获得的。

对于传感器,没有中央存储器可以保存两个设备的运动数据 原因可能是:

  • 存储此数据没有多大意义
  • 要同步的数据太多了!
  • Motion具有极高的响应速度,因此必须将Apple Watch的传感器数据发送到iPhone,最糟糕的情况是每秒至少。那将是一场巨大的电池猪!

现在这部分是一个假设的解决方案,但很抱歉,这是不可能的。

您的下一个挑战是创建占位符Apple Watch App Extension,其唯一任务是通过WatchConnectivity从iPhone接收消息,启动它的传感器以获取数据,并将样本发送回iPhone再次通过WatchConnectivity

可悲的是,Apple Watch应用程序在后台执行代码时非常有限。