自从我更新到 Xcode 9 和 Swift 4.0 后,我模拟器中的 mapView 运行速度一直非常慢。我认为这是因为代码会被弃用或者因为我的代码太多导致它变慢,但我将 mapView 添加到一个空白项目中并且 mapView 导航/缩放也很慢!是否需要配置一些设置才能在模拟器中修复此问题?
这是控制台日志中产生的输出:
2017-10-26 23:25:50.932530-0500 mapTest[7994:151068] [VKDefault] Tile 1.2.2 (256) in current unloaded state for 0.07 seconds - Polygons - Loading (ephemeral) (0.07 sec), Rivers - Loading (ephemeral) (0.07 sec), Roads - Loading (ephemeral) (0.07 sec), Point Labels - Loading (ephemeral) (0.07 sec), Polygon Labels - Loading (ephemeral) (0.07 sec), Road Labels - Loading (ephemeral) (0.07 sec), Resources - Unavailable (terminal) (2.11 sec), Attributes - Loading (ephemeral) (0.07 sec)
最佳答案
如果这只是在 ios 11 或 10.3 的模拟器中,那么它是一个已知错误。对于与 mapKit 相关的每个人来说,XCode 9 模拟器的运行速度非常缓慢。这个bug可见here和 here .但是,如果您在手机上使用该应用程序,它应该可以正常工作。
从事 Swift 开发的 Apple 员工已经承认了这个问题。目前唯一的解决方法是使用 ios 10 模拟器或更改渲染模块(Apple 员工建议)。据推测,更改模块并不完美,但它可能会有所帮助。在终端中输入:
默认写入 com.apple.CoreSimulator.IndigoFramebufferServices FramebufferRendererHint X
将 X 替换为:0 = auto,1 = Metal,2 = OpenCL,3 = OpenGL
同样,这是模拟器中的官方错误,因此更改渲染仍然无法使模拟完美。已经有 4-5 人提交了有关此问题的错误报告,并且已得到确认,因此希望尽快修复。
编辑
我在 iOS 11.1 模拟器上尝试了一个 map 套件应用程序。好像是稍微更顺畅了,但是还是弹出错误提示...等待修复
编辑
有评论指出,这在 iOS 11.3 beta 中已修复。
关于Swift 4.0 MapView 运行缓慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46967513/