我收到以下错误:"当我尝试在我的iOs应用中集成地图时,您的密钥可能对您的捆绑ID无效#34;
我想我已阅读有关该问题的所有帖子,但我无法找到解决方案。启用了Google地图SDK for iOs,对bundle id进行了双重检查(也在日志中),多次创建APIKey,并在日志GMSServices.provideAPIKey中返回true。我还在不同的谷歌帐户上创建了新的应用程序,具有不同的包ID并且也得到相同的错误。
有什么想法吗?谷歌有什么问题,或者我做错了什么?
TNX 伊戈尔
编辑:
好的,我想我找到了问题所在。根据谷歌docs,看起来api键需要有40个字符,但我总是得到api键,长度为39个字符。
答案 0 :(得分:6)
重要:如果您想在iOS设备上练习谷歌地图,只需从以下链接下载 GoogleMaps.framework : https://developers.google.com/maps/documentation/ios/start#getting_the_google_maps_sdk_for_ios
我在不知情的情况下下载了 GoogleMapsM4B.framework ,并遇到了“您的密钥可能对您的软件包ID无效的问题:com.company.example”
如果您想在项目中使用 GoogleMapsM4B.framework ,那么 1.您应该在企业支持门户网站(Google的网站)上请求支持 2.您必须在Google控制台网站中启用 Google Maps Mobile SDK for Work 而非 Google Maps SDK for iOS 。
如果您想使用 GoogleMaps.framework 而非 GoogleMapsM4B (商家地图),那么您无需申请支持中心,只需启用Google Maps SDK即可谷歌控制台网站上的iOS。
您可以在以下链接中找到Google Maps SDK for iOS和Google Maps Mobile SDK for Work(M4B)之间的主要差异: https://developers.google.com/maps/documentation/business/mobile/ios/
并将GoogleMaps / GoogleMaps.h导入您的文件,并将您的api密钥传递给以下方法: [GMSServices提供了APIKey:@“您的API密钥”];
(或)
如果您拥有有效的许可证,请下载GoogleMapsM4B.framework并将GoogleMapsM4B / GoogleMaps.h导入您的文件,并将api传递给相同的方法[GMSServices provideAPIKey:@“您的API密钥”] 但我猜你只有在购买许可证后才可以拿到这把钥匙。
所以我遇到的主要问题是......而不是下载 GoogleMaps.framework 我已经下载 GoogleMapsM4B.framework 并添加到我的项目中。每次我运行我的项目时,它都会给我一个错误,说“您的密钥可能对您的软件包ID无效:com.example.sampleapp”
现在我的项目工作正常。
答案 1 :(得分:2)
GoogleMapsM4B.framework用于(商业地图) 而不是下载GoogleMaps.framework并使用此框架。
答案 2 :(得分:0)
我有同样的问题。
如果要复制/粘贴,请尝试输入API密钥。绝对值得一试,也许某种方式通过复制/粘贴传递特殊字符。
答案 3 :(得分:0)
我遇到了完全相同的问题,我读过的答案都没有帮助我。 "解决方案"我终于找到了禁用" Google Maps SDK for iOS" Google Developers Console中的API,并在几秒钟后再启用它。看起来像谷歌的启用功能中的一个错误。
答案 4 :(得分:0)
在尝试了我在这里找到的所有其他内容后,有一件事对我有用。
我删除了密钥,然后重新创建并在创建密钥之前将密钥标识符添加到密钥中。
虽然谷歌允许稍后编辑密钥的捆绑标识符字段,但只有在创建密钥后才添加标识符时,它似乎无法正常工作。