模拟器中的位置不起作用。我得到零纬度和零经度

时间:2015-11-29 19:39:36

标签: swift location cllocationmanager simulator

但是当使用真实设备时,我会获得正确的坐标。

在模拟器中,我转到调试位置自定义位置或Apple,但我总是获得nil值。

在真实设备中,两个人可以使用该应用程序,即没有零值,但是由于坐标值为零,有三分之一的人会崩溃。

在偏好设置中,我们都激活了位置服务。

1 个答案:

答案 0 :(得分:1)

有时模拟器只想用你的时间玩游戏:),所以完全重置就可以了。

但是,为了防止您的应用从规则设备或模拟器中崩溃,您应该确保您拥有对gps的完全访问权限。所以你应该使用didChangeAuthorizationStatus方法。

func locationManager(manager: CLLocationManager, didChangeAuthorizationStatus status: CLAuthorizationStatus)
    {
        if status == CLAuthorizationStatus.Restricted
        {
           print(" Access Restricted \n")
        }
        else if status == CLAuthorizationStatus.Denied
        {
            print(" Access Denied \n")

        }
        else if status == CLAuthorizationStatus.AuthorizedAlways
        {
            self.MyLocationManager.startUpdatingLocation()  //<---- 
            print(" Access Granted \n")
        }
    }

正如你所看到的那样AuthorizedAlways,你想要开始你的gps。