无法实例化名为MKMapView的类

我可能正在做一些非常愚蠢的事情,就像我之前做的那样,现在它已经成功了,现在…

创build一个新的iPad项目,在细节视图中,我添加了一个MKMapView,将MapKit.framework添加到项目,添加属性/等到头。 去运行项目,并获得一个SIGABRT

****由于未捕获exception“NSInvalidUnarchiveOperationException”而终止应用程序,原因:“无法实例化名为MKMapView的类”**

我发现http://mithin.in/2009/06/22/using-iphone-sdk-mapkit-framework-a-tutorial/,但正如我所说,我已经添加了框架。 我错过了什么?

我也遇到了这个问题,但是我可以按照步骤2中的说明(顺便说一下)来通过它:

  1. 将MapKit框架添加到项目中。 (控制+点击框架文件夹 – >添加 – >现有框架)

我刚刚searchMapKit.framework,将其添加到项目,错误消失。

我还没有添加任何地图代码(虽然我有一个在IB连接的MapViewDelegate),但它迄今工作正常!

点击您的项目来进行项目设置。 在“目标”下,单击您的项目,从上面的工具栏“构build阶段”中select。 在“与库链接二进制”选项卡下,您将看到项目中包含的框架列表。 点击“+”button,从显示的列表中添加MapKit库到你的项目中。

对于Xcode 6.1:

  • select你的项目
  • 在常规选项卡中,查找链接的框架和库 (最后一个)
  • 按下+button
  • searchMapKit.framework
  • 最后添加

XCode版本7.2

就我而言,这对我来说是完美的,你所要做的就是启用MAPS

在这里输入图像说明

UPDATE

也适用于Xcode版本8.2

对于xCode 4.2:

Click on your project name ->targets ->building Phase ->link binary with library -> click on + sign ->select mapKit.framework ->click add 

我注意到当我在模拟器上构build和运行时,我收到了这个消息(在本文中提到的原始消息之上):

ld:warning:忽略文件/Users/peter/programming/iPhone/iNspector/MapKit.framework/MapKit,文件是为不支持的文件格式而构build的,而不是被链接的架构(i386)

然后,我刚刚连接我的iPhone,build立并运行在设备上,地图工作。

所以看来MapKit框架不能在386架构上编译,它需要这个设备。

关于@ futureshocked的投入,我也遇到了

Id:警告:忽略文件/blah…/MapKit,文件是build立为不支持的文件格式,这是不是被链接的架构(i386)

问题。

**检查以确保在将MapKit框架添加到项目中时,不会将MapKit框架复制到本地项目目录中。 我不小心做到了这一点,XCode给了我上面的错误。 所以我从我的项目目录(在Finder中)中删除它,重新编译,一切都正常了。

如果您的项目中没有框架,请按照上述答案中的说明重新链接。

find一个开始使用MapKit的好教程:
http://www.youtube.com/watch?v=X-3jM24EIGM&feature=related

即使在将我的部署目标更改为5.1之后,我也在尝试部署到5.1手机(使用XC 4.5)时收到此错误。 看起来地图更新不会飞,因为我的手机上仍然有Google地图。 更新手机的操作系统后,exception消失。

请在您的构build阶段导入WebKit。 您需要导入WebKit