Ios磁强计错误值

Ios磁强计错误值,ios,swift,magnetometer,cmmotionmanager,Ios,Swift,Magnetometer,Cmmotionmanager,我正在写检测磁铁的代码。我通过以下代码执行此操作: let manager = CMMotionManager() if manager.isMagnetometerAvailable { manager.startMagnetometerUpdates(to: OperationQueue.main) { (data, error) in let bField = sqrt((pow(data?.magneticField.x ?? 0, 2) + pow(data?

我正在写检测磁铁的代码。我通过以下代码执行此操作:

let manager = CMMotionManager()

if manager.isMagnetometerAvailable {
manager.startMagnetometerUpdates(to: OperationQueue.main) { (data, error) in    
        let bField = sqrt((pow(data?.magneticField.x ?? 0, 2) + pow(data?.magneticField.y ?? 0, 2) + pow(data?.magneticField.z ?? 0, 2)))
        print(bField)    
    }
}

问题是,在没有磁铁的情况下,打印值高于250。如果周围没有磁铁,该值应在50uT左右。是原始数据吗?如果是原始数据,如何获得原始数据?

你是想说
数据吗?磁场
不准确?是的,它的值不准确你得到的
x
y
z
值是什么?你也检查过它的x=37.316314697265625::y=198.1747283935547::z=186.24736022942,我没有检查校准。如何检查校准?嗯。。。至少你得到的值是:P不管怎样,检查:你是想说
数据吗?磁场
不准确?是的,它的值不准确你得到的
x
y
z
值是什么?你也检查过它的x=37.316314697265625::y=198.1747283935547::z=186.24736022942,我没有检查校准。如何检查校准?嗯。。。至少您得到的值是:P无论如何,请检查: