我正在制作一个跟踪用户位置的应用程序,目前我正在使用以下代码(一旦用户授权跟踪他们的位置)进行此操作:
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()或stopUpdatingLocation()。
发布于 2017-04-16 14:17:26
当您的唯一目的是更新地图时,您将使用userTrackingMode。但有时我们希望用户位置用于其他目的(例如,将其登录到某个数据库,使用它查看我们可能提供的商店和或基于位置的特价,等等)。事实上,当地图可能根本没有显示,或者至少还没有显示时,我们可以使用CLLocationManager。
因此,如果您只关心更新地图,那么您可以使用userTrackingMode。但是,如果您关心的位置独立于任何视觉地图,使用CLLocationManager。
https://stackoverflow.com/questions/40435307
复制相似问题