如何让 Apple Watch 追踪到 HKWorkout 的设备名称

Posted

技术标签:

【中文标题】如何让 Apple Watch 追踪到 HKWorkout 的设备名称【英文标题】:How to get HKWorkout's device name tracked by Apple Watch 【发布时间】:2016-12-22 20:35:44 【问题描述】:

我正在尝试通过 Apple HealthKit 中的 HKSampleQuery 获取 HKWorkout 样本。顺便说一句,我无法获得 Apple Watch 跟踪的 HKWorkout 的设备名称。

我可以获得几个 HKWorkout 示例数据并确认 sourceRevision 和 totalDistance 可用。但无法确认唯一的设备数据。它表明它有一个空值。

Apple 在这方面错过了吗?

这是我的实验代码。

func getRunningWorkouts(completionHandler: @escaping (_ data:[AnyObject]?, _ response:Bool, _ error:Error?) -> Void) 
    let predicateForRunning = HKQuery.predicateForWorkouts(with: .running)
    let sortDescriptor = NSSortDescriptor(key: HKSampleSortIdentifierStartDate, ascending: false)
    let sampleType = HKWorkoutType.workoutType()

    let sampleQuery = HKSampleQuery(sampleType: sampleType, predicate: predicateForRunning, limit: HKObjectQueryNoLimit, sortDescriptors: [sortDescriptor])  (query, resultsArray, error) in
        if error != nil 
            print("Get an error to extract running workout: \(error)")
            return
        
        if let samples = resultsArray as? [HKWorkout] 

            for sample in samples 
                    print(sample.device?.name)
                    completionHandler(samples, true, nil)
                
            
        


    
    healthStore.execute(sampleQuery)

【问题讨论】:

如果您在问题中添加代码/屏幕截图以使其更清晰,这可能会很好。 【参考方案1】:

如果您认为样本中缺少 Apple Watch 的名称是错误的,您应该向 Apple 提交错误。

【讨论】:

以上是关于如何让 Apple Watch 追踪到 HKWorkout 的设备名称的主要内容,如果未能解决你的问题,请参考以下文章

如何让 Apple Watch 进入防水模式?

3日 | SteamVR将放弃支持苹果macOS系统;Apple Watch Series 6或将增加焦虑监测和睡眠追踪功能

Apple Watch:这是让 Apple Watch 应用获取新数据的好方法吗?

Apple Watch 让应用程序保持活跃几秒钟

为 SwiftUI Apple Watch App 实现基于页面的导航

如何将用户从 Apple Watch 通知转移到 Apple Watch App?