Search code examples
iosgoogle-maps-sdk-ios

Google Maps iOS API key not working


I have a simple iOS app into which I am integrating Google Maps. However, the API key I've provided results in several of these error messages when my map view is displayed:

ClientParametersRequest failed, 3 attempts remaining (0 vs 5). Error Domain=com.google.HTTPStatus Code=400 "The operation couldn’t be completed. (com.google.HTTPStatus error 400.)" UserInfo=0x1818bf40 {data=<CFData 0x18137410 [0x302aec8]>{length = 145, capacity = 256, bytes = ...}}

Here is what I have already tried to no avail:

  • Calling [GMSServices provideAPIKey:] as the first line of code within didFinishLaunchingWithOptions
  • Double-checking that my API key is correct and is an iOS API key (I copy/pasted it directly from the Google Cloud Console into my app)
  • Providing the API key both with {} and without
  • Confirming my bundle name by outputting it with [[Bundle mainBundle] bundleIdentifier]
  • Omitting bundle identifier restrictions altogether
  • Regenerating the API key

I am not sure what else to try. My bundle name is in this format: net.company.MyApp and I have entered it exactly that way into the Google Cloud Console (I know bundle IDs are case-sensitive).

Could it be that Google doesn't support bundle identifiers of a certain type (e.g., with upper-case letters or beginning with net.)?


Solution

  • I found the issue. Google Maps SDK for iOS must be enabled for keys to work. I already had Google Maps API v3 enabled and I thought that was enough, but it wasn't.