Ios 何时使用MKMapView';s MKUserTrackingMode vs Location Manager';开始更新位置?
我正在制作一个跟踪用户位置的应用程序,目前我正在使用以下代码(一旦用户授权跟踪其位置):Ios 何时使用MKMapView';s MKUserTrackingMode vs Location Manager';开始更新位置?,ios,swift,swift3,mapkit,cllocationmanager,Ios,Swift,Swift3,Mapkit,Cllocationmanager,我正在制作一个跟踪用户位置的应用程序,目前我正在使用以下代码(一旦用户授权跟踪其位置): override func viewDidLoad() { super.viewDidLoad() // set map View delegate mapView.delegate = self // turn on user tracking mode to follow user if tracking == true { mapView.us
override func viewDidLoad() {
super.viewDidLoad()
// set map View delegate
mapView.delegate = self
// turn on user tracking mode to follow user
if tracking == true {
mapView.userTrackingMode = MKUserTrackingMode.follow
} else {
mapView.userTrackingMode = MKUserTrackingMode.none
}
}
这似乎可以很好地跟踪用户的位置,我想知道什么时候我会使用它,什么时候我会使用
locationManager.startUpdatingLocation()
或StopUpdateLocation()
当您的唯一目的是更新地图时,您会使用userTrackingMode
。但有时我们希望用户位置用于其他目的(例如,将其记录在某个数据库中,使用它查看我们可能提供的商店和/或基于位置的特殊交易,等等)。事实上,当地图可能根本没有显示,或者至少还没有显示时,我们可以使用CLLocationManager
因此,如果您只关心更新地图,那么可以使用userTrackingMode
。但是,如果您关心独立于任何可视地图的位置,请使用CLLocationManager