Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 何时使用MKMapView';s MKUserTrackingMode vs Location Manager';开始更新位置?_Ios_Swift_Swift3_Mapkit_Cllocationmanager - Fatal编程技术网

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