实施新的Google地图SDK到我的iOS应用程序

更新:我刚收到一封来自Google的关于新版Google Maps iOS SDK的电子邮件。 似乎一切都已经解决了。 我已经成功地为我的应用程序创build了新的API密钥! 还没有玷污它,但似乎是正确的。 他们给了我这个 URL页面。

祝你好运!


我从昨天开始尝试更改我的代码,以便能够使用2天前发布的新版Google Maps SDK。 我遵循所有的指示,但直到现在还没有达到显示它们。 我已经要求一个API密钥,但是现在还没有任何答复。 此外,我试图从Google API控制台获取API密钥,但在服务列表中找不到“Google Maps SDK for iOS”

其次,当我试图运行我的应用程序(在模拟器上),屏幕是黑色的,我只能看到左侧的Google徽标(并按下它)。 我在日志屏幕上看到这些消息:

2012-12-14 12:20:57.132 CoL[515:7a03] Google Maps SDK for iOS version: 1.0.1.1154 2012-12-14 12:20:57.132 CoL[515:7a03] New version of Google Maps SDK for iOS available: 1.0.1.1154 2012-12-14 12:20:57.192 CoL[515:c07] ClientParametersRequest failed, 3 attempts remaining. Error Domain=DASHConnectionError Code=100 "The operation couldn't be completed. (DASHConnectionError error 100.)" 2012-12-14 12:20:57.242 CoL[515:c07] ClientParametersRequest failed, 2 attempts remaining. Error Domain=DASHConnectionError Code=100 "The operation couldn't be completed. (DASHConnectionError error 100.)" 2012-12-14 12:21:01.291 CoL[515:c07] ClientParametersRequest failed, 1 attempts remaining. Error Domain=DASHConnectionError Code=100 "The operation couldn't be completed. (DASHConnectionError error 100.)" 2012-12-14 12:21:09.314 CoL[515:c07] ClientParametersRequest failed, 0 attempts remaining. Error Domain=DASHConnectionError Code=100 "The operation couldn't be completed. (DASHConnectionError error 100.)" 2012-12-14 12:21:13.339 CoL[515:c07] ClientParametersRequest failed, 3 attempts remaining. Error Domain=DASHConnectionError Code=100 "The operation couldn't be completed. (DASHConnectionError error 100.)" 2012-12-14 12:21:13.363 CoL[515:c07] ClientParametersRequest failed, 2 attempts remaining. Error Domain=DASHConnectionError Code=100 "The operation couldn't be completed. (DASHConnectionError error 100.)" 2012-12-14 12:21:17.386 CoL[515:c07] ClientParametersRequest failed, 1 attempts remaining. Error Domain=DASHConnectionError Code=100 "The operation couldn't be completed. (DASHConnectionError error 100.)" 

更新:只是注意到,项目不能在设备上成功(iPhone 4S,iOS 6)。 我不知道是否与上面的问题有关,但这里是错误的:

 ld: file is universal (2 slices) but does not contain a(n) armv7s slice: /Users/.../GoogleMaps.framework/GoogleMaps for architecture armv7s clang: error: linker command failed with exit code 1 (use -v to see invocation) 

以及我的架构部分的外观如何 在这里输入图像说明

谁已经取得了成功的工作?

您需要一个API密钥才能使用新的Google地图SDK。 这是他们的页面中提到的 。

感谢您对iOS版Google地图SDK的关注。 目前我们正在申请访问API密钥。 请在下方提供有关您的应用程序 当密钥可用时,我们会邮寄成功的申请人。

所以你必须等到钥匙可用。

检查这个谷歌地图的开始页面 。 你可以在那里注册你的项目,它将可用。

对于第二个问题,检查这个文件是通用的(三个切片),但它不包含在iOS上的静态库的(n)ARMv7-s切片错误,无论如何绕过? 。 您可能需要从项目中删除对armv7的支持。

我有真正的答案。 所以我也获得了SDK的访问权限,但它仍然没有为我工作。 它显示为一个灰色的地图上有一个针。

步骤来解决:

清理你的Xcode项目。 重置iOS模拟器。 closuresXcode和模拟器。 启动并运行。

显然确保你有你的API,否则不会工作。

就我而言,我需要四天时间才能收到iOS的API密钥激活。

当您收到Google的电子邮件后,请再次访问API服务页面,那时您应该能够在API服务列表中看到适用于iOS的Google Maps SDK ,那么您现在就可以在您的项目中使用您的给定的API密钥。

将这个代码添加到你的AppDelegate的方法application:didFinishLaunchingWithOptions:在你的项目中:

 [GMSServices provideAPIKey:@"YOUR_API_KEY"]; 

检查您的API Key是否有效。 您创buildAPI Key包标识符应该是正确的。 放入API Key

 [GMSServices provideAPIKey:@"YOUR_API_KEY"]; 

这将有所帮助。

我遇到了类似的问题,我的问题是我用来在Google中生成密钥的包标识符与我在Xcode中使用的标识符不同。 在纠正标识符,我得到了问题的解决。

由于API密钥失败而发生此失败。 您必须首先使用您的项目名称和包标识符从这里创build一个项目。 然后根据需要启用Google Maps Directions API,Google Maps SDK for iOS和其他function。 屏幕截图 然后复制API密钥,并使用: 没有CocoaPods的GoogleMaps

检查步骤 –

  1. 提供API密钥,如果您没有API密钥,请从Google API控制台日志中生成一个select您的项目。

  2. 检查需要的框架 –

     -CoreBluetooth.framework -OpenGLES.framework -ImageIO.framework -CoreData.framework -CoreText.framework -QuartzCore.framework -SystemConfiguration.framework -GLKit.framework -CoreLocation.framework -Security.framework -Accelerate.framework -libc++abi.tbd -libc++.1.tbd -libc.tbd -libicucore.tbd 

3.检查链接器标志 – 如果尚未添加,添加“-ObjC”和“$(inheritance)”

4.检查体系结构 – 添加“$(ARCHS_STANDARD)”(如arm7,arm64),如果没有添加

5.检查复制包资源中是否存在包。

如果可以成功运行,请提供您的反馈。 我想知道iPhone 4s中的地图性能,因为iPhone 4具有较旧的OpenGL版本,因此帧速率可能会变低,并可能导致地图冻结。

希望这有助于,谢谢…….. 🙂