With the Maps SDK for iOS, you can add maps based on Google maps data to your application. The SDK automatically handles access to the Google Maps servers, map display, and response to user gestures such as clicks and drags. You can also add markers, polylines, ground overlays and info windows to your map. These objects provide additional information for map locations, and allow user interaction with the map.
When using the SDK you need to comply with the Google Maps Platform Terms of Service and ensure that your app complies with applicable laws. Note that when using the SDK, your application name and version, authentication information and a cross-application anonymous identifier is automatically sent with each request.
This conceptual documentation is designed for people familiar with iOS development and object-oriented programming concepts. You should also be familiar with Google Maps from a user's point of view. It is designed to let you start exploring and developing applications with the Maps SDK for iOS. You may also refer to the reference documentation for specific details of classes and methods.
If you use the Maps SDK for iOS in your application, you must include the attribution text as part of a legal notices section in your application. Including legal notices as an independent menu item, or as part of an "About" menu item, is recommended.
You can get the attribution text by making a call to
With the Maps SDK for iOS, you can build apps that target native 64-bit devices running iOS 12.0 and later. Developing an application with the Maps SDK for iOS requires at least Xcode 12.0 with a target SDK of 12.0 or later. (Setting a target SDK of 12.0 or later will not prevent your app from running on iOS 12.0).
Use of the Maps SDK for iOS within iOS app extensions is unlikely to work, due to the strict memory restrictions which are applied. For example, use of the SDK within a custom keyboard is unlikely to work.
NOTE: As of iPadOS 13 you can allow your app to have multiple windows or instances running simultaneously. Maps SDK for iOS has not been optimized for this experience and may result in undefined behavior.