2015-07-21 127 views
0

Mapbox First Steps guide后,我一直无法弄清楚如何让用户的位置显示在应用程序中。有没有人使用最新的MapboxGL构建成功地获取用户位置标记以显示在iOS9中?我的假设是用户位置标记与非GL Mapbox库(脉动标记)中的标记相似。采取如何在mapbox-gl中显示用户位置标记?

步骤:

  1. First Steps指导,Info.plist的是与NSLocationAlwaysUsageDescription属性更新。
  2. 地图通过致电mapView.showsUserLocation = true进行初始化。
  3. 我实现了MGLMapViewDelegate函数,以简单地记录所有的方法调用。我发现坐标包含无效值(纬度和经度值似乎都是:3.40282346638529e + 38)。

目前正在Xcode7 Beta 3/Swift 2.0/MapboxGL上测试这个0.5.2。

回答

0

对不起,我有a bug < = 0.5.1其中Mapbox GL从不要求位置权限,如果应用程序想要always权限。这将在下一个版本0.6.0中得到解决。

Mapbox GL会正确询问是否设置了NSLocationWhenInUseUsageDescription,因此使用WhenInUse权限是最简单的解决方法。

在开发过程中,还可以在Settings.app→隐私→位置服务→YourAppName中手动授权位置。

另一个解决方法是使用您自己的CLLocationManager请求always权限。

+0

感谢您的更新。我添加了'NSLocationWhenInUseUsageDescription'来确保我看到[这行代码](https://github.com/mapbox/mapbox-gl-native/blob/master/platform/ios/MGLMapView.mm#L2314)失败设置新的位置。看看[Github]上的新报告问题(https://github.com/mapbox/mapbox-gl-native/issues/1912),似乎这可能是ios9特有的问题。 –

0

修复了最新的mapbox-gl版本。请参阅this

相关问题