【问题标题】:IOS - ObjC Google Maps Api KeyIOS - ObjC Google Maps Api Key
【发布时间】:2013-09-01 12:10:29
【问题描述】:

我只是按照here 的说明做的一切都是正确的,但是 Xcode 仍然给出了这个错误:

  Google Maps SDK for iOS cannot connect or validate APIKey: Error Domain=com.google.HTTPStatus Code=400 "The operation couldn’t be completed. (com.google.HTTPStatus error 400.)" UserInfo=0x8416b20 {data=<CFData 0x9187710 [0x27424d8]>{length = 145, capacity = 256, bytes = 0x3c48544d4c3e0a3c484541443e0a3c54 ... 3c2f48544d4c3e0a}}
2013-09-01 15:04:04.902 MyApp[1357:12e03] Your key may be invalid for your bundle ID: MyBundleID

所以我用谷歌搜索了它并得到了这些:first resultsecond result,从现在开始它开始变得无聊。有没有办法让这封邮件更快,还是我做错了什么?

【问题讨论】:

    标签: iphone ios objective-c google-maps google-maps-sdk-ios


    【解决方案1】:

    哦,我有答案了。也许有人需要它。只需从您的 API KEY 中清除 {} 这些标志,我的意思是它不应该像下面这样

    [GMSServices provideAPIKey:@"{123123123}"];
    

    应该是这样的:

    [GMSServices provideAPIKey:@"123123123"];
    

    【讨论】:

      【解决方案2】:

      我建议仔细检查两件事:

      1. 请注意,Bundle Identifier 区分大小写。如果在应用程序中或在 google 开发控制台中大写关闭,则会出现此错误。

        • 额外提示.. 您可以通过在 viewDidLoad 方法中包含类似于以下内容的日志来仔细检查应用程序的包标识符。
        NSLog(@"当前标识符:%@", [[NSBundle mainBundle] bundleIdentifier]);
      2. 确保您已将 API 密钥包含在上面 Sercan Ozdemir 列出的应用程序委托中。您的应用的委托文件应包含类似于以下的方法。

        - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions
        {
            // 应用程序启动后自定义的覆盖点。
            [GMSServices 提供APIKey:@"INSERT_GOOGLE_API_KEY_HERE"];
            返回是;
        }
        

      【讨论】:

      • 感谢您的建议 :)
      【解决方案3】:

      即使我做的一切都正确,我也面临同样的问题。我在选择框架时犯了一个错误。我使用了 GoogleMapsM4B.framework 而不是 GoogleMaps.framework。从this链接中选择合适的框架后,我克服了这个错误。

      这可能对某人有帮助。

      【讨论】:

        猜你喜欢
        • 2015-12-25
        • 1970-01-01
        • 2011-11-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-09-03
        • 1970-01-01
        相关资源
        最近更新 更多