我正在编写代码以检测磁铁。我通过这段代码来做到这一点:
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。是原始数据吗?如果是原始数据,如何获取原始数据?