Swift watchOS 2 - CMSensorDataList

前端 未结 3 1478
忘了有多久
忘了有多久 2020-12-19 08:10

Short: I don\'t know how to extract the CMRecordedAccelerometerData from the CMSensorDataList after getting one from the CMSensorRecorder. Apple isn\'t providing any documen

3条回答
  •  失恋的感觉
    2020-12-19 08:45

    Marcus's answer in Swift 4:

    //First make the extension to use enumerate in the for-in loop
    extension CMSensorDataList: Sequence {
        public typealias Iterator = NSFastEnumerationIterator
    
        public func makeIterator() -> NSFastEnumerationIterator {
            return NSFastEnumerationIterator(self)
        }
    }
    
    //Now you can query the recorded data
    func printData(){
        let date = Date()
        let recorder = CMSensorRecorder()
          let accelerometerData = recorder.accelerometerData(from: startDate, to: endDate)
    
         for (index, data) in (accelerometerData?.enumerated())! {
                        print(index, data)
          }
    }
    

提交回复
热议问题