I try use iphone to get CalibratedMagneticField(in geo-coordinate).But is always retrun 0 .(another SO question :CoreMotion - magneticField is always 0:CoreMotion - magneticField is always 0). my version is swift4+ios12. here is my code
func myacc(){
motion.deviceMotionUpdateInterval = 0.5
motion.showsDeviceMovementDisplay = true
motion.startDeviceMotionUpdates(to: OperationQueue.current!) { (data, error) in
print(data as Any)
if let trueData = data {
self.view.reloadInputViews()
let x = trueData.magneticField.field.x
let y = trueData.magneticField.field.y
let z = trueData.magneticField.field.z
self.xAccel.text = String(x)
self.yAccel.text = String(y)
self.zAccel.text = String(z)
}
}