适用于iOS的Google Maps SDK需要GoogleMaps.bundle作为“复制包资源”下目标的一部分

当我为iOS构buildGoogleMaps SDK时,会发生这些错误。

*** Terminating app due to uncaught exception 'GMSException', reason: 'Google Maps SDK for iOS requires GoogleMaps.bundle to be part of your target under 'Copy Bundle Resources'' 

但是,GoogleMaps.framework是在复制束资源。所以,我很困惑。请告诉我这个问题的原因。

    说明有点缺乏。 我希望这有帮助…

    1. 启动Xcode(简单)
    2. 将GoogleMaps.framework包拖到项目的Frameworks组中。 出现提示时, select将项目复制到目标组的文件夹中。

    3. 在项目中右键单击GoogleMaps.framework,然后selectShow In Finder。 它没有说的是…然后进入名为Resources的子文件夹

    4. 将GoogleMaps.bundle从Resources文件夹拖到您的项目中。 我们build议把它放在框架组中。 出现提示时, 确保将项目复制到目标组的文件夹未选中。

    对于search到的2017年人来说,最简单的方法当然是通过pod installpod update尝试安装和更新您的pod。 最后,通过这两个命令清理项目和构build:

    1. 清理生成: Command + alt option + Shift + K
    2. 清洁项目: Command + Shift + K

    那么瞧! 崩溃不会再发生。

    如果您在此框架的更新版本中遇到此问题并且正在使用CocoaPods部署,请检查“ Build Phases ”的“ Copy Pods Resources ”部分:

    在这里输入图像说明

    显然这个部分丢失是一件事情,删除你的豆荚目录和重新运行“ 豆荚安装 ”是不足以解决它。 相反,你需要抓住这个方便的工具:

    https://github.com/CocoaPods/cocoapods-deintegrate

    运行这个东西,然后重新运行pod install ,你的“ Copy Pods Resources ”部分应该回来,并且当你实例化你的映射时你不会得到这个exception。

    运行“pod install”为我解决了这个问题。

    对于那些在Xcode 9(第一版本)和新的编译系统中使用Xcode 9的人来说,下面为我解决了这个问题。

    注意:根本问题似乎是新build的系统没有正确清理,所以你需要切换回新的系统。 也是截至9/25/17谷歌的地方select器调用主线程的UI,并在Xcode中抛出错误。

    – 切换到旧版本系统

    – 点击你的项目文件“我的应用程序名称”

    – 在“TARGETS”下单击您的应用程序名称(不testing或UITests!)

    build设阶段

    – [CP]复制副本资源

    – 你应该看到$ {PODS_ROOT} / GoogleSomething,select那些并点击 –

    – closuresXcode,运行pod安装。

    – 打开Xcode,Command-Shift-K(清理,并确保你在旧的系统!)

    – build立/运行,现在应该工作

    终止应用程序,由于未捕获的exception“GMSException”,原因:“谷歌地图SDK的iOS需要GoogleMaps.bundle成为您的目标”复制包资源“下的一部分,

    1. GoogleMap.frameword/ResourcesfindGoogleMaps.bundle ,你会看到GoogleMap.bundle
    2. 使用GoogleMapsBase.framework将GoogleMaps.bundle拖放到Base/Framework

    希望这可以帮助。 谢谢

    一旦我更新到Xcode 9 Swift 3.2,我一直在这一行AppDelegate内发生崩溃:

     GMSServices.openSourceLicenseInfo() 

    我一直使用格伦的回答来清理那个肯定奏效的项目,但最终还是发生了崩溃。

    为了解决这个问题,我不得不按照Google Maps API安装中的指示进行操作

    跟随:

    步骤2:安装SDK手动安装