我正在努力获取加速度计数据时,设备是在我们的手和移动。我已经做了一个工作程序来获取加速度计的运动和旋转数据。接下来,我想录下来并通过电子邮件分享。我在读关于recordAccelerometerForDuration的文章,但我不知道如何使用它来记录加速度计数据并通过电子邮件共享。我可以从这个链接看到apple开发者的帮助https://developer.apple.com/library/ios/documentation/CoreMotion/Reference/CMSensorRecorder_class/
有人可以分享一些样本如何记录价值和分享在邮件中实现两者吗?
更新
我准备了一个记录加速度计的样本代码,如下所示,
@IBAction func startRecorderAction() {
guard CMSensorRecorder.isAccelerometerRecordingAvailable() else {
print("Accelerometer data recording is not available")
return
}
let recorder = CMSensorRecorder()
let duration = 3.0
if CMSensorRecorder.isAuthorizedForRecording(){
print("SensorRecorder authorized")
}else{
print("SensorRecorder not authorized")
}
recorder.recordAccelerometerForDuration(duration)
NSOperationQueue().addOperationWithBlock{[unowned recorder] in
NSThread.sleepForTimeInterval(duration)
let now = NSDate()
let past = now.dateByAddingTimeInterval(-(duration))
let data = recorder.accelerometerDataFromDate(past, toDate: now)
let accelerationData: [CMAcceleration] = data!.map {
//every $0 is CMRecordedAccelerometerData
$0.acceleration
}
print(accelerationData)
}
}
当我运行应用程序时,它会显示“加速度计数据记录不可用”。但我使用的是iPhone 6和iOS 9.3.1版本。那么,为什么加速度计记录不可用而显示错误,以及如何消除这种情况?
有人能帮忙吗?
最佳答案
通常,在模拟器中运行时,所有传感器数据都不可用。
因此,您将需要建立和运行到您的设备。
但你的代码是正确的。
请让我们知道是否是模拟器的问题
关于ios - 记录加速度计数据并共享,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37913554/