iOS6的模拟器MKMapKit“中找不到框架default.styleproto”

问题描述:

运行我的应用程序与iOS6的模拟器我正在以下印在之前viewDidLoad Xcode控制台中获取调用:iOS6的模拟器MKMapKit“中找不到框架default.styleproto”

找不到框架中的default.styleproto

有没有其他人遇到过这种情况,如果有的话,是否找到了原因?我的猜测是它与iOS6 Apple Maps有关,但谁知道呢!

编辑

我要补充一点,我没有得到的的iOS 5.1模拟器此警告。

+2

我也有这个: 框架中找不到hybrid.styleproto 它可能与地图的视觉风格有关。但为什么? –

+0

不知何故,当我在地图上添加一个按钮时,我遇到了这个问题。我将它删除并重新添加,问题消失了。 – huggie

我发现一种方法来一致地重现此。

首先,罪魁祸首是您的模拟器的Cache文件夹中的一组文件。转到您的应用程序支持文件夹iPhone模拟器:

~/Library/Application Support/iPhone Simulator/[6.0 and above]/Library

然后看看里面你Caches/GeoServices/Resources

你会看到有一些.styleproto文件。这些文件仅在MapKit为首次在模拟器中使用时创建。它也可能发生在设备上,但我还没有确认。

如果您想测试此功能,请确保您有.styleproto文件,然后重新启动您的应用程序,并且在访问地图时不会再看到警告。

删除GeoServices缓存文件夹,退出并重新启动模拟器(和您的应用程序),并出现警告!

+0

但是我们在哪里可以找到.styleproto文件? – Stanley

+0

在上面指定的文件夹中。你能在你的'〜/ Library/Application Support'文件夹中找到'iPhone Simulator'吗? – abellina

+0

现在我可以找到模拟器的Caches/GeoServices/Resources文件夹。但是没有任何.styleproto文件...请帮助。 – Stanley

我通过调整我的视图控制器中的MKMapView到iPhone 5的新大小解决,现在我没有任何警告消息。

+0

因此,你曾经有过这样一个设定的宽度和高度?我的地图不是全屏。我也似乎无法复制这个了。 – abellina

+0

我在界面生成器中设置了灵活的带高度和边距的mapview,经典的UINavigationController + MKMapView – matsoftware

如果你的iOS模拟器的GPS设置为无,你会得到这个waring。只需将iOS模拟器的GPS设置更改为“Apple Store”或其他设置,它就会消失。

+0

嗯......我无法复制这个。我将它设置为none,唯一的错误是地图找不到用户,而不是styleproto错误。我有一段时间没有见过。 – abellina

嗯...我有同样的问题...我认为这个问题可能是6.0模拟器;如果我将Deployment Target设置为5.1并使用5.1 Simulator运行应用程序并取消选中Autolayout复选框,那么我没有任何问题,但是如果我在运行应用程序时使用6.0 Simulator,那么地图不会出现,并在Xcode控制台打印消息“框架中找不到default.styleproto”...

+0

我无法复制这个。我将部署目标设置为6.0,并在6.0模拟器中使用自动布局运行它,但这不会导致日志消息。 – abellina

请将您的GPS设置设为有效,否则此错误可能会再次发生。此外,建议为iPhone 5设置相框。

我刚打开设备上的无线设备,此警告消失,我的地图可见。

Shows User Location 这是旧的,但对于像我这样遇到此线程的任何人,也可能是未检查地图视图对象上的“显示用户位置”选项。这是我的问题,而不是上面的缓存,虽然我在控制台中得到了完全相同的错误。我甚至没有尝试从上面的答案缓存修复,我所做的只是检查该选项和瞧。