Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/100.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 斯威夫特苹果健康血糖_Ios_Swift_Applehealth - Fatal编程技术网

Ios 斯威夫特苹果健康血糖

Ios 斯威夫特苹果健康血糖,ios,swift,applehealth,Ios,Swift,Applehealth,我访问了Apple Health,能够读取模拟器中的血糖数据 guard let sampleType = HKSampleType.quantityType(forIdentifier: HKQuantityTypeIdentifier.bloodGlucose) else { fatalError("*** This method should never fail ***") } let query = HKSample

我访问了Apple Health,能够读取模拟器中的血糖数据

    guard let sampleType = HKSampleType.quantityType(forIdentifier: HKQuantityTypeIdentifier.bloodGlucose) else {
        fatalError("*** This method should never fail ***")
    }
    
    let query = HKSampleQuery(sampleType: sampleType, predicate: nil, limit: Int(HKObjectQueryNoLimit), sortDescriptors: nil) {
        query, results, error in
        
        guard let samples = results as? [HKQuantitySample] else {
            // Handle any errors here.
            return
        }
        
        for sample in samples {
            print(sample)
        }
        
我给我这个:

(2020-05-06 19:09:49+0200-2020-05-06 19:09:49+0200) 7.8 mmol/L 811ACEB-F942-4A48-937B-568AD66E1BDE“健康”(13.3)、“iPhone12,3”(13.3)元数据:{ HKWasUserEntered=1;}

是否有可能只打印出7.8 mmol?
我在苹果公司的文件中没有找到任何东西。谢谢您的帮助。

样本是HKQuantitySample类型的一个类。如果您打印(示例),那么它将打印完整的类数据

如果只想打印数量,请尝试按以下方式打印

print(sample.quantity)

我打赌你还需要从数量中提取双精度值本身。下面是一个示例代码

    let unit = HKUnit.gramUnit(with: .milli).unitDivided(by: HKUnit.liter())
    let value = sample.quantity.doubleValue(for: unit)
对于值的源和设备,您可以尝试以下操作:

   let device = sample.device
   let sourceRevision = sample.sourceRevision

如果你愿意,你可以试试我的椰子荚。它是HealthKit框架之上的一个包装器,用于简化读/写操作。这是链接:

这就是你看到的吗?如果它回答了您的问题,您可以接受答案。已解决:
sample.startDate
谢谢!帮了我很多忙。有没有办法只获取来源,比如“健康”和日期?