CoreLocation模块无法精准获取手机真实位置的问题求助
CoreLocation模块无法精准获取手机真实位置的问题求助
各位iOS开发的朋友们,我最近在做位置相关功能时碰到了个头疼的问题:CoreLocation模块始终没办法精准获取我手机的真实位置,showUserLocation显示的位置总是存在轻微偏差。
以下是我的LocationViewModel.swift代码片段:
import Foundation import CoreLocation import Combine class LocationViewModel: NSObject, ObservableObject, CLLocationManagerDelegate { private let locationManager = CLLocationManager() @Published var location: Location? @Published var authorizationStatus: CLAuthorizationStatus? @Published var errorMessage: String? @Published var gpsSignalStatus: String = "Detecting GPS signal..." override init() { super.init() locationManager.delegate = self locationManager.desiredAccuracy = kCLLocationAccuracyBestForNavigation locationManager.allowsBackgroundLocationUpdates = true locationManager.pausesLocationUpdatesAutomatically = false checkAuthorizationStatus() } // 后续的方法实现(如checkAuthorizationStatus、位置代理回调等)未完全粘贴
我已经设置了最高精度的kCLLocationAccuracyBestForNavigation,也开启了后台位置更新,还关掉了自动暂停位置更新的功能,但位置偏差的问题还是没解决。想请教下各位大佬,可能是什么原因导致的?有没有排查方向或者解决办法可以分享呀?
备注:内容来源于stack exchange,提问作者Kinda Hall
相关产品推荐
相关产品推荐

