【发布时间】:2016-06-11 17:13:35
【问题描述】:
我正在制作一个苹果手表应用程序,它可以获取从一个日期到另一个日期的加速度计数据。通过使用此代码:
@IBAction func start() {
WKInterfaceDevice.currentDevice().playHaptic(WKHapticType.Start)
let startDate = NSDate()
NSUserDefaults.standardUserDefaults().setObject(startDate, forKey: "StartDate")
}
@IBAction func stop() {
WKInterfaceDevice.currentDevice().playHaptic(WKHapticType.Stop)
let endDate = NSDate()
let startDate = NSUserDefaults.standardUserDefaults().objectForKey("StartDate") as! NSDate
printData(startDate, endDate: endDate)
}
然后当我使用函数 printData() 导出数据时,这是该函数的代码
func printData(startDate: NSDate, endDate: NSDate) {
let recorder = CMSensorRecorder()
let list: CMSensorDataList = recorder.accelerometerDataFromDate(startDate, toDate: endDate)!
for (index, data) in list.enumerate() {
print(index, data)
}
}
对于枚举,我有一个扩展,这里是扩展的代码:
extension CMSensorDataList: SequenceType {
public func generate() -> NSFastGenerator {
return NSFastGenerator(self)
}
}
当我按下停止按钮时,应用程序崩溃。我从这个问题(Swift watchOS 2 - CMSensorDataList)中得到了我的所有代码,但它在我的设备上不起作用。有谁知道发生了什么?
【问题讨论】:
标签: ios swift watchkit apple-watch watchos-2