我目前正在通过Xcode构建一个iOS应用程序,它利用了corelocation.framework,但不幸的是我遇到了一些麻烦。我下载了Apple的LocateMe示例应用程序,当我通过模拟器运行它时,它运行良好(没有错误或警告)。
然后,我构建了一个空的单页应用程序,并将corelocation.framework文件添加到其中。当我编译并运行它时,我收到一个警告:
(null): Ignoring file/Users/Andrew/Documents/GoogleDrive/Developer/
Xcode/Apps/GetLocation/CoreLocation.framework/CoreLocation, file
was built for unsupported file format ( 0xce 0xfa 0xed 0xfe 0x c 0x
0 0x 0 0x 0 0x 9 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) which is not
the architecture being linked (i386):/Users/Andrew/Documents/
GoogleDrive/Developer/Xcode/Apps/GetLocation/CoreLocation.framework
/CoreLocation
我尝试使用Finder找到框架并添加它,并将框架从Apple的应用程序拖到我的应用程序中。两者都会产生相同的警告。
除了文件目录看起来很好(我的应用程序存储在哪里)之外,我不能说上述错误,而i386我相信代表我的MacBook Air的集成图形芯片组。
我也尝试将Apple的应用程序降级到基本级别,但这很难 - 他们决定制作一个相当复杂的应用程序来代表该技术。
不幸的是,我对这一切的了解需要改进,而且我确实觉得自己正在接受这项任务,但我还是打赌这个 - 需要在15日之前完成工作!
因此,如果有人可以提供有关为什么要生成此警告的一些指导,以及我如何解决它,我们将不胜感激。
更新
我仔细看了一下Apple的LocateMe应用程序,我发现该版本适用于iOS 3.2。当我将其更改为iOS 5.1时,除了单个错误之外一切正常 - 不推荐使用locationServicesEnabled。
答案 0 :(得分:5)
查看错误报告,看起来您已设法将CoreLocation.framework
复制到项目目录中。
file/Users/Andrew/Documents/GoogleDrive/Developer/Xcode/Apps/GetLocation/CoreLocation.framework/CoreLocation
我不知道你是如何设法得到它的,但你需要做的第一件事就是从该位置删除.framework文件,然后删除现在的红色对Xcode项目中CoreLocation.framework的引用。
然后执行以下操作:
附注:
当您在上面的第5个项目符号点中选择CoreLocation.framework时,请确保选择iOS 5.1文件夹引用下的CoreLocation.framework。