使用HealthKit,我正在保存
我在苹果手表和iPhone上运行相同的代码。
当我在iPhone上保存时
当我在苹果手表上保存时
当我在苹果手表上保存并在我的iPhone应用程序中删除
当我在苹果手表上保存并在Apple Watch App中删除
问题
我做错了什么,或者这是HealthKit和iPhone Activity App的工作方式吗?
更具体的问题:
如果这不是我的错误,那么任何iOS应用都无法可靠地保存活动应用中显示的锻炼。 iOS应用程序可以将数据发送到手表应用程序,这是一个简单的部分。但我知道无法在后台处理手表上的这些数据。用户必须启动监视应用程序才能处理数据。
测试是在硬件上进行的,而不是在模拟器上进行的。 iOS 9.2.1,watchOS 2.1
我使用watchOS 2.2 beta 5 + iOS 9.3 beta 5添加了测试。我编辑了上面的结果。摘要:删除是固定的,在iPhone上保存仍然无效。
借助iOS 9.3 / watchOS 2.2,Apple添加了HKActivitySummary
,HKActivitySummaryQuery
和HKActivityRingView
。简而言之:关于iPhone上的活动应用程序的所有内容也适用于HKActivitySummaryQuery。它们共享上述功能和错误。
答案 0 :(得分:3)
这绝对是目前难以驾驭的东西!有三个不同的问题,单独的解释。
在iPhone上保存锻炼时
在Apple Watch上保存锻炼并在iPhone App中删除:
HKWorkout
样本不足以删除与该锻炼相关联的样本。例如,如果您不希望它们存在,则需要明确删除相关的活动能量样本。也就是说,删除锻炼应该从活动环中删除它的贡献。如果它没有,那么这听起来像是一个值得单独提交的错误,因为您的原始错误可能被解释为在活动中从iPhone计算的请求。