Subscribe to these release notes.
This page is updated with each new release of the Maps SDK for iOS. The changelog lists releases by date and includes any new features, bug fixes and significant performance improvements. You can also browse and filter all release notes for all products in the Google API Console.Consult the Getting Started documentation for information on how to download the most recent version of the Maps SDK for iOS.
August 12, 202510.2.0
The Maps SDK for iOS version 10.2.0 is now available. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed. If you are a new user, see Set Up in the Google Cloud Console to start the installation process. If you are an existing customer, see the upgrade instructions at Versions.
10.2.0
Crash reporting. The MetricKit framework has been added to track abnormal exit counts, increasing reliability. For manual installations, you must add the MetricKit.framework
in Xcode.
10.1.0
The Maps SDK for iOS version 10.1.0 is now available. Version bump, no changes. This version is functionally identical to v10.0.0. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed. If you are a new user, see Set Up in the Google Cloud Console to start the installation process. If you are an existing customer, see the upgrade instructions at Versions.
May 19, 202510.0.0
The Maps SDK for iOS version 10.0.0 is now available. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed. If you are a new user, see Set Up in the Google Cloud Console to start the installation process. If you are an existing customer, see the upgrade instructions at Versions.
10.0.0
According to the Mobile OS version support policy, we are freezing support for iOS 15 as of Maps SDK for iOS v10.0.0. The new minimum supported OS is iOS 16. Earlier SDK versions will continue supporting iOS 15.
If your dependencies do not specify a version number, your IDE will load the newest SDK version and new builds of your app will not support iOS 15.
Specify a version of the Maps SDK for iOS in your application's build dependencies in order to control when you raise the minimum supported OS for new versions of your app.
10.0.0
The compass button in active navigation mode has been updated. The size and style has been updated to match other Google Maps Mobile offerings, though the default position has not changed. To avoid driver distraction, the compass will remain in the same position if the header (in portrait mode) expands and conflicts with the default position of the compass. If you add a secondary header custom control or header accessory view, the compass is now hidden to avoid UI conflicts. The compass now supports day and night modes, as well as dark mode.
10.0.0
The default behavior is updated to display automatic dark mode to match Apple norms and accessibility requirements. Previously, the default was to always display light mode. You can set this back to the UIUserInterfaceStyle.light
interface style if you would like your app to only display light mode.
10.0.0
The mapViewDidFinishTileRendering
API is not invoked in no-network conditions.
10.0.0
In the next major version of Maps SDK for iOS, compassButton
in GMSUISettings
will be shown by default.
10.0.0
The new minimum supported version of Xcode is 16.0.
March 24, 20259.4.0
The Maps SDK for iOS version 9.4.0 is now available. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed.
If you are a new user, see Set Up in the Google Cloud Console to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
9.4.0
We are ramping up PanoramaView to use the Metal renderer instead of the OpenGL renderer. This change should not be noticeable to the human eye and will have full feature parity. This will fix certain simulator rendering issues by enabling PanoramaView to work in simulator on Xcode versions that no longer support OpenGL on simulators. Our public issue tracking event is here: https://issuetracker.google.com/issues/383046157. Please report any relevant issues you find during this gradual rollout.
January 27, 20259.3.0
The Maps SDK for iOS version 9.3.0 is now available. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed.
If you are a new user, see Set up your Google Cloud project to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
9.3.0
As of this release, crosswalks, sidewalks, and road lane markings may be visible on the map in certain metropolitan areas worldwide. Lane markings may not be visible on all roads even in areas where they are supported. The areas where these elements are visible may vary over time. When visible, crosswalks and sidewalk elements can be styled using Cloud Based Map Styling.
9.3.0
The Google Maps binary now strips any code that isn't referenced by public API classes. The size of the resulting binary is smaller by approximately 45%.
9.3.0
Swift Preview no longer breaks when the Maps SDK for iOS is added using Swift Package Manager.
November 18, 20249.2.0
The Maps SDK for iOS version 9.2.0 is now available. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed.
If you are a new user, see Set up your Google Cloud project to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
9.2.0
Updated API reference. The look and organization of the Maps SDK for iOS API reference has changed.
Note: The URLs for the API references pages have changed, so any pages you may have bookmarked will redirect you to the API reference homepage.
August 28, 20249.1.1
Bug fixes.
August 14, 20249.1.0
The Maps SDK for iOS version 9.1.0 is now available. Version bump, no changes. This version is functionally identical to v.9.0.0. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed.
If you are a new user, see Set up your Google Cloud project to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
May 28, 20249.0.0
Release 9.0.0
The Maps SDK for iOS version 9.0.0 is now available. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed.
If you are a new user, see Set up your Google Cloud project to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
9.0.0
According to the Mobile OS version support policy, we are freezing support for iOS 15 in an upcoming major version of Maps, Places, and Navigation SDKs for iOS.
Versions of Maps, Places, and Navigation SDKs for iOS released beginning the second quarter of 2025 will support a minimum of iOS 16. Earlier SDK versions will continue supporting iOS 15.
If your dependencies do not specify a version number, your IDE will load the newest SDK version and new builds of your app will not support iOS 15.
Specify a version of the Maps, Places, and Navigation SDKs for iOS in your application's build dependencies in order to control when you raise the minimum supported OS for new versions of your app.
9.0.0
According to the Mobile OS version support policy, we are freezing support for iOS 14 as of Maps SDK for iOS v9.0.0. The new minimum supported OS is iOS 15. Earlier SDK versions will continue supporting iOS 14.
If your dependencies do not specify a version number, your IDE will load the newest SDK version and new builds of your app will not support iOS 14.
Specify a version of the Maps SDK for iOS in your application's build dependencies in order to control when you raise the minimum supported OS for new versions of your app.
9.0.0
You can now use data-driven styling for datasets with your apps. Data-driven styling for datasets lets you upload your own geospatial datasets, apply custom styling to their data features, and display those data features on maps.
For more information and examples, see Data-driven styling for datasets.
9.0.0
Updated the default colors for maps to match the new colors that are already available in the Google Maps app. For more information, see New map style for Google Maps Platform.
9.0.0
The Apple Privacy Manifest file is now included in the resources bundle for the SDK. For more information, see Inspect the privacy manifest file.
9.0.0
You can now set the map color scheme to dark, light, or to use the system settings.
For more information and examples, see Map color scheme.
9.0.0
Simplified the install process when using the Swift Package Manager by changing the dependencies for the Maps SDK for iOS. Previously, you had to add dependencies for GoogleMapsBase
, GoogleMapsCore
, and GoogleMaps
to your project. With this release, you only have to add GoogleMaps
. We have also removed GoogleMapsM4B
from the Maps Swift package.
Because of this change, if you upgrade from an older version to 9.0.0, you need to remove GoogleMapsBase
, GoogleMapsCore
, and GoogleMapsM4B
from your project dependencies after you upgrade to version 9.0.0.
9.0.0
Since Apple has deprecated OpenGL support as of iOS 12 (2018), support for the OpenGL renderer and the setMetalRendererEnabled
boolean in the Maps SDK for iOS is deprecated as of v9.0.0 , and will be unsupported in the major version that will be released in the second quarter of 2025.
Instead, use the Metal renderer, which has been default since Maps SDK for iOS v8.0.0, and remove setMetalRendererEnabled
from your codebase.
8.4.0
The new minimum supported version of Xcode is 15.0.
8.5.0
With the release of the Places SDK for iOS version 8.5, the latest version of the Maps SDK for iOS remains v.8.4.0.
February 20, 20248.4.0
To streamline the SDK, the obsolete GoogleMapsM4B module in the Maps SDK for iOS is deprecated as of February 2024, and will be unsupported in the major version that will be released in the second quarter of 2025.
Since the GoogleMapsM4B module is related to an obsolete billing plan, it is safe to remove dependencies on the legacy GoogleMapsM4B module in your app. If you use CocoaPods to install the Maps SDK for iOS, remove the GoogleMapsM4B
pod from the list of dependencies in your Podfile. If you manually install the Maps SDK for iOS, remove the GoogleMapsM4B framework
from your project.
8.4.0
Release 8.4.0
The Maps SDK for iOS version 8.4.0 is now available. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed.
If you are a new user, see Set up your Google Cloud project to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
8.4.0
234007610 : Fix for zoomed out Polyline rendering on Metal.
December 14, 20238.3.1
Release 8.3.1
Infrastructure update. The Maps SDK for iOS now supports Swift Package Manager.
Using Xcode's Swift Package Manager integration, you can add or update the Maps SDK dependency directly from Xcode. Select the version of the Maps SDK for iOS that you want to use. For new projects, Google recommends you specify the latest version and use the option "Exact Version".
To learn how to add the Maps SDK for iOS to a project through Swift Package Manager, see the Set up an Xcode project guide.
November 28, 20238.3.1
Fixed a crashing bug for Maps SDK.
November 14, 20238.3.0
Release 8.3.0
The Maps SDK for iOS version 8.3.0 is now available. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed.
If you are a new user, see Set up your Google Cloud project to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
8.3.0
The Google Maps Platform now offers updated cloud-based maps styling in the Google Cloud Console, enhancing your ability to create a customized map experience for users of your iOS applications. Learn more at New Cloud Styling Overview.
8.3.0
When initializing your map view, configuration options are now set with GMSMapViewOptions. Option properties include the frame
, camera
, mapID
or backgroundColor
. For developers who subclass the GMSMapView
, you will also need to update your initializer.
8.3.0
The new GMSMapViewOptions backgroundColor
property allows you to override the default map background color.
8.0.0
Infrastructure update. For versions of Maps SDK 8.0.0 or greater, the default renderer has been changed to Metal. We encourage customers to remove calls to GMSService.setMetalRendererEnabled from their code as this method will be deprecated.
September 19, 20238.0.0
See the Release Notes for information about this update and for all previous updates or subscribe to the Release Notes XML feed.
If you are a new user, see Set up your Google Cloud project to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
8.0.0
As of version 8.0.0, the Maps SDK now supports advanced markers. With advanced markers you can customize the default marker's background, border, glyph text, collision behavior and replace the default marker icon with a custom graphic image.
For more information, see the advanced markers overview.
8.0.0
As of version 8.0.0, the Maps SDK now supports data-driven styling for boundaries. Data-driven styling for boundaries lets you access Google's polygons for administrative boundaries, apply styling to boundary polygons, display them on your maps.
For more information, see the data-driven styling for boundaries overview.
September 05, 20238.2.0
Release 8.2.0
The Maps SDK for iOS version 8.2.0 is now available. Version bump, no changes. This version is functionally identical to v.8.1.0. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed.
If you are a new user, see Set up your Google Cloud project to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
July 24, 20238.1.0
Release 8.1.0
The Maps SDK for iOS version 8.1.0 is now available. Version bump, no changes. This version is functionally identical to v.8.0.0. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed.
If you are a new user, see Set up your Google Cloud project to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
May 17, 20238.0.0
Release 8.0.0
The Maps SDK for iOS version 8.0.0 is now available. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed.
If you are a new user, see Set up your Google Cloud project to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
8.0.0
According to the Mobile OS version support policy, we are freezing support for iOS 13 as of Maps SDK for iOS v8.0.0. The new minimum supported OS is iOS 14. Earlier SDK versions will continue supporting iOS 13.
If your dependencies do not specify a version number, your IDE will load the newest SDK version and new builds of your app will not support iOS 13.
Specify a version of the Maps SDK for iOS in your application's build dependencies in order to control when you raise the minimum supported OS for new versions of your app.
8.0.0
Sprite Stamped polylines are now supported with the Metal Framework. This allows you to create a polyline using a repeating bitmap image of your choice. Shapes show with a clear background stroke, but the stamp is not truncated around line corners - making them useful for situations such as dots for illustrating walking directions. For more information see Sprite Stamped Polylines.
8.0.0
The new mapCapabilities
property on GMSMapView
adds programmatic checking for map-specific features. Included is support for Sprite Stamped Polylines. For more information see Map Capabilities.
8.0.0
The new minimum supported version of Xcode is 14.0. Note the deprecations in the Xcode 14 release notes about the end of support for building with bitcode.
May 15, 20237.4.0
Freezing support for iOS 14
According to the Mobile OS version support policy, we are freezing support for iOS 14 in an upcoming major version of SDK for iOS.
Versions of Maps SDK for iOS released beginning the second quarter of 2024 will support a minimum of iOS 15. Earlier SDK versions will continue supporting iOS 14.
If your dependencies do not specify a version number, your IDE will load the newest SDK version and new builds of your app will not support iOS 14.
Specify a version of the Maps SDK for iOS in your application's build dependencies in order to control when you raise the minimum supported OS for new versions of your app.
February 27, 20237.4.0
Release 7.4.0
The Maps SDK for iOS version 7.4.0 is now available. Version bump, no changes. This version is functionally identical to v.7.3.0. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed.
If you are a new user, see Set up your Google Cloud project to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
January 12, 20237.3.0
Release 7.3.0
The Maps SDK for iOS version 7.3.0 is now available. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed.
If you are a new user, see Set up your Google Cloud project to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
7.3.0
Maps SDK framework installation with CocoaPods now includes built-in support for XCFramework. This framework allows developers to build code for Xcode Simulator on M1 Macs.
November 03, 20227.2.0
Release 7.2.0
The Maps SDK for iOS version 7.2.0 is now available. See the Release Notes for information about this release and for all previous releases or subscribe to the Release Notes XML feed.
If you are a new user, see Set Up in the Google Cloud Console to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
7.2.0
234007610 : Polyline spans fixed for paths with duplicate points on Metal.
August 29, 20227.1.0
Release 7.1.0
The Maps SDK for iOS version 7.1.0 is now available. See the Release Notes for information about this release and for all previous releases.
If you are a new user, see Set Up in the Google Cloud Console to start the installation process.
If you are an existing customer, see the upgrade instructions at Versions.
7.1.0
With this release, we have updated the default image used for markers in the Maps SDK for iOS.
7.1.0
239943840: Updated the draggable marker experience.
August 15, 20227.0.0
Freezing support for iOS 13 - August 15, 2022
According to the Mobile OS version support policy, we are freezing support for iOS 13 in an upcoming major version of Maps and Places SDKs for iOS.
Versions of Maps and Places SDKs for iOS that release beginning the second quarter of 2023 will support a minimum of iOS 14. Earlier SDK versions will continue supporting iOS 13.
If your dependencies do not specify a version number, your IDE will load the newest SDK version and new builds of your app will not support iOS 13.
Be sure to specify a version in your application's build dependencies in order to control when you raise the minimum supported OS for new versions of your app.
7.0.0
Version 7.0 - June 27, 2022Support for iOS 12 is now frozen. The minimum iOS version is now 13.0.
The new minimum version of Xcode is 13.0.
Bug fixes
Fix an issue where apps running in the iOS simulator would crash when using the Metal renderer (Issue 208593323).
Fix crash that occurred occasionally when a GMSMapView instance was released.
Features
cloud-based maps styling lets you style, customize, and manage your maps using the Google Cloud console. cloud-based maps styling is a paid feature accessed by adding a map ID to your app. The map ID triggers a map load charged against the Dynamic Maps SKU for Maps SDK for iOS.
In previous releases of the Maps SDK for iOS, if you exceeded your usage quota for the map ID, your app displayed an error message to the user. With this release, if you exceed your usage quota, cloud-based maps styling is disabled and your map appears without any custom styling. Error messages are no longer displayed to the user.
Version 6.1.1 - March 22, 2022Bug fixes
Fixed an issue where labels disappeared at certain zoom levels when using a custom style.
Fixed an issue where a deadlock could occur when using the Metal renderer.
Features
Maps SDK for iOS v2.5 and lower are now deprecated and will be fully decommissioned in January 2023.
Application versions built with Maps SDK for iOS v2.5 and lower will no longer work after those versions are decommissioned. To avoid disruption for your users, build new versions of your application with Maps SDK for iOS v2.6 or higher and encourage users to upgrade to the newer versions of your app before January 2023.
Note that v2.6 supports a minimum of iOS 8, which will be the new minimum OS supported by Maps SDK for iOS, so users may need to upgrade their version of iOS as well.
Version 2.6 also supports a minimum of Xcode 8.0, so this deprecation also raises the minimum IDE supported by Maps SDK for iOS.
Be sure to specify a version in your application's build dependencies in order to control which version of the SDK you build with, which has implications on minimum OS supported for your users. See the guidance on app maintenance best practices which encourages specifying the newest version available in order to access the latest features and bugfixes.
Version 6.0.1 - December 9, 2021Features
Features
The appearAnimation
field on GMSMarker can now be set to kGMSMarkerAnimationFadeIn
to cause the marker to fade in when added.
(Beta) This release contains a preview of support for the XCFramework format. You can now install the Maps SDK for iOS as an XCFramework, a binary package that you can use on multiple platforms including machines using the M1 chipset.
Google recommends that you only use this Beta release for development and testing, and rely on the .framework
version of the SDK for your production apps.
Bug fixes
Support for iOS 11 is now frozen. The minimum iOS version is now 12.0.
The new minimum version of Xcode is 12.0.
Support for cloud-based maps styling is generally available as of October 27, 2021 in SDK versions 5.0 and newer. These features, tied to a map ID, will incur charges against the Dynamic Maps SKU.
Version 5.2.0 - October 19, 2021Features
Opt-in support added for using the Metal rendering framework from Apple. To try the Metal renderer in your app, call [GMSServices setMetalRendererEnabled:YES]
in Objective-C, or GMSServices.setMetalRendererEnabled(true)
in Swift before creating any map views.
If you are Installing the SDK manually, you must also add the Metal.framework
in XCode.
Polylines can now have a repeated image, or stamp, over the line. See the GMSPolyline Class reference for more information.
Bug fixes
Known issues
Texture stamp images can appear distorted on polylines when using the OpenGL renderer (Issue 200024432).
Polylines with segments that meet at an acute angle may appear differently on the OpenGL or Metal renderers (Issue 200025456).
In response to changes in our internal dependencies, we are freezing support for iOS 12 in an upcoming major version of Maps SDK for iOS.
Versions of Maps SDK for iOS released beginning the second quarter of 2022 will support a minimum of iOS 13. Earlier SDK versions will continue supporting iOS 12.
If your dependencies in CocoaPods or Carthage don't specify a version number, Xcode will load the newest version and new builds of your app won't support iOS 12.
Be sure to specify a version in your application's build dependencies in order to control when you raise the minimum supported OS for new versions of your app. See the guidance on app maintenance best practices.
Beta SDK deprecation - August 18, 2021Deprecation
The Beta versions of Maps SDK for Android and iOS are now deprecated and will be fully decommissioned in late 2022. A supported version of the Maps SDK for Android and iOS will be made available at least one year prior to the beta SDK being fully decommissioned, which is estimated to occur in late 2022.
The use of the mobile Maps SDKs (Android & iOS) Beta will be degraded per the following schedule:
For Android:
For iOS:
On all platforms, the Beta SDKs will be fully decommissioned, at least one year after a supported (non-Beta) version is released. We will communicate with you again once the new version is released, so that you can start your migration efforts.
What do you need to do?
If you are not using features in Beta (maps customization, marker collision handling, or polyline customization—Android, iOS), update your apps to use a supported version as soon as possible before the decommission in late 2022. See the Android and iOS documentation for instructions.
If you are using features in Beta, you should wait for upcoming releases of the SDKs to migrate to a supported SDK version.
Contact Google Maps Platform Support with any questions.
Freezing support for iOS 11 - July 20, 2021In response to changes in our internal dependencies, we are freezing support of iOS 11 in an upcoming major version of Google Maps Platform SDKs for iOS.
Versions of Maps SDK for iOS released beginning the fourth quarter of 2021 will support a minimum of iOS 12. Earlier SDK versions will continue supporting iOS 11.
If your dependencies in CocoaPods or Carthage don't specify a version number, Xcode will load the newest version and new builds of your app won't support iOS 11.
Be sure to specify a version in your application's build dependencies in order to control when you raise the minimum supported OS for new versions of your app. See the guidance on app maintenance best practices.
Version 5.1.0 - June 28, 2021Bug fixes
Deprecations
This release also includes deprecations and updates for the Places SDK for iOS and Navigation SDK for iOS.
Version 4.2.0 - March 8, 2021Features:
setAbnormalTerminationReportingEnabled:
API on GMSServices
.Features:
setAbnormalTerminationReportingEnabled:
API on GMSServices
.Note:
Improvements
Bug fixes
Bug fixes
Note:
Resolved Issues:
Features
SDKLongVersion
method, which returns the long version of the Maps SDK for iOS.Resolved Issues
Resolved Issues:
Improvements:
Resolved Issues:
Known Issues:
Features:
Features:
Enabled the new basemap style by default. You can still opt-out temporarily if you need time to modify your app to accommodate the new style. If you do, follow Issue 72853293 which contains the timeline for end of support of the previous basemap style. We will be posting updates there as they are available.
To opt-out, use the code snippet below. The best place to do this in your app is right after providing your API key, using GMSServices provideAPIKey
. You must be using at least Version 2.6.0 in order to opt-out. If you had previously opted-in to the new basemap style, this should replace the code you added to opt-in. See the blog post for more information about the new style.
NSArray *options = @[@"B3H9HE845CFHYG"];
BOOL didSetApiOptions = [GMSServices provideAPIOptions:options];
NSLog(@"Options were set: %d", didSetApiOptions);
Improvements:
GMSServices
.Resolved Issues:
GMSDASHStreamingBody
(Issue 68701108).GMSPanoramaView
(Issue 72581496).Note:
Features:
Enabled opt-in for the new basemap style. To opt-in, use the code snippet below. The best place to do this in your app is right after providing your API key, using GMSServices provideAPIKey
. You must be using at least Version 2.6.0 in order to opt-in. See the blog post for more information about the new style.
NSArray *options = @[@"B3MWHUG2MR0DQW"];
BOOL didSetApiOptions = [GMSServices provideAPIOptions:options];
NSLog(@"Options were set: %d", didSetApiOptions);
Features:
Improvements:
Resolved Issues:
-Wobjc-property-no-attribute
flag is used (Issue 65561405).Note:
Features:
Improvements:
Resolved Issues:
Resolved Issues
Resolved Issues
Improvements
Resolved Issues
Features
cameraTargetBounds
property to GMSMapView
. This property restricts the camera target to the specified bounds area. Subsequent gestures are then also restricted to keep the camera target within the specified bounds.userData
property of GMSMarker
was moved to its parent class GMSOverlay
. This enables the property to be used with the GMSPolyline
, GMSPolygon
, GMSCircle
, and GMSGroundOverlay
classes.Improvements
GMSMapViewType
, GMSFrameRate
, GMSMarkerAnimation
, and GMSLengthKind
.Resolved Issues
mapViewSnapshotReady
delegate method was sometimes raised too early (Issue 10799.)Resolved Issues
Features
This release introduces custom styling of the base map (Issue 4968). You can use a JSON style declaration to create a GMSMapStyle
instance and pass it to the mapStyle
property, to change the visual display of features like roads, parks, businesses, and other points of interest. You can use styling to emphasize particular components of the map, or make the map complement the style of your app. Styling works only on the kGMSTypeNormal
map type.
It is now possible to apply "night mode" to maps, by applying custom styles. (Issue 5661.)
Business points of interest (POIs) now appear by default on the map, provided that the map type is kGMSTypeNormal
. Prior to this release, local POIs appeared on the map, but not business POIs). Business POIs represent businesses such as shops, restaurants, hotels, and more. See the guide to points of interest.
With the addition of business points of interest, there is a new optional method didTapPOIWithPlaceID
on GMSMapViewDelegate
which provides notification when a POI has been tapped. (Issue 8174.)
You can hide POIs on a map by using map styling.
Resolved Issues
canGoOffline
selector internally, to avoid triggering false positives during submission to the Apple app store. (Issue 10393.)iconView
property of GMSMarker
is now correctly marked as nullable. (Issue 10391.)GMSPath
initFromEncodedPath
now returns nil for invalid input (previously invalid input could result in a crash). (Issue 10162.)GMSMapView
, which compares two camera positions to determine whether they are close enough to render identically. (Issue 9494.)GMSCircle
will now always draw at least a dot for small radius circles, including radius 0. (Issue 9528.)Resolved Issues
Improvements
Resolved Issues
Features
Resolved Issues
Resolved Issues
Features
Resolved Issues
Resolved Issues
Features
Resolved Issues
This version is exactly the same as 1.11.1. It was released to replace the removed 1.12.0 release.
Version 1.12.0 - February 2016This version was removed because of errors in the framework and shouldn't be used.
Version 1.11.1 - December 2015Resolved Issues
Features
Resolved Issues
Notes - Setting GMSMapView selectedMarker to a marker not on the map is now ignored, always set the marker's map property before attempting to select it.
Version 1.10.5 - October 2015Resolved Issues
Resolved Issues
Features:
Resolved Issues:
Resolved Issues:
Resolved Issues:
Features:
allowScrollGesturesDuringRotateOrZoom
property on GMSUISettings
lets you control whether the user can scroll by panning during multi-touch rotate or zoom gestures. (Issue 7737.)GMSPanoramaView
now supports being used in storyboard.GMSGeocoder
now supports being used while the app is in the background.GMSServices sharedServices
can now be called while the app is in the background. Note that if the first call to sharedServices
occurs while the app is in the background, some async initialization work will be deferred until the first time a map is shown where it will be performed synchronously.GMSMapView
and GMSPanoramaView
init messages can now be handled while the app is in the background. This should remove the last case where GMSMapView
or GMSPanoramaView
couldn't be used in the background. (Issues 7860, 8007, 8037, 7896, 7951.)GMSMapView
and GMSPanormaView
delegate properties now support IBOutlet
for easier use in storyboard. (Progress towards a fix for issue 6866.)Resolved Issues:
mapView:didTapMyLocationButtonForMapView:
is now correctly called even if no location is available. (Issue 7742.)GMSGroundOverlay
now shows correctly when rotated if image aspect ratio doesn't match the selected ground region. (Issue 7772.)GMSCircle
to mapView:didTapOverlay:
for tappable circles. (Issue 6890.)mapView:idleAtCameraPosition:
is now called even if there is an ongoing update of the My Location dot. (Issue 7889.)Notes:
Migration from 1.9.2 or earlier:
Versions 1.9.2 and earlier of the Maps SDK for iOS were available as a zip file containing a static framework. There was also the option to install recent versions from a CocoaPods pod. From version 1.10.0 onwards, the Maps SDK for iOS is available for installation only using CocoaPods.
If you previously installed the Maps SDK for iOS from a zip file containing a static framework:
If you previously installed the Maps SDK for iOS from the Google-Maps-iOS-SDK
pod:
GoogleMaps
.pod install
.Download version 1.9.2.
Resolved Issues:
mapView:didTapAtCoordinate:
. (Issue 7222)mapView:willMove:
and mapView:idleAtCameraPosition:
even for swipe motions which last less than 30ms. (Issue 7206)GMSPanoramaService
callbacks if the panorama is nil.moveNearCoordinate:
resolves to nil. (Issue 7109)Download version 1.9.1.
Resolved Issues:
userEmail
private selector. (Issue 7310)Download version 1.9.0.
Features:
Resolved Issues:
Notes:
GMSGeometryIsLocationOnPathTolerance
and GMSStyleSpansOffset
.Download version 1.8.1.
Resolved issues:
mapView:willMove:
is no longer called alongside a tap gesture. (Issue 6702)Version 1.8.0 has been replaced by version 1.8.1 and is no longer available for download.
Resolved issues:
GMSMapView
correctly releases some shared GL state previously causing memory leak. (Issue 5941, Issue 6265, Issue 6629)GMSPolyline
no longer crashes in some cases where its path contained more than 1024 segments. (Issue 6542)mapView:idleAtCameraPosition:
is now only called once all user gestures are complete. (Issue 5718)GoogleMaps.framework
if you have no interest in these regions, but some text may render as "[?]".Download version 1.7.2.
Resolved issues:
GMSPolyline
's are no longer grayscale on iOS 7.1.Version 1.7.1 has been replaced by Version 1.7.2 and is no longer available for download.
Resolved issues:
GMSPanorama
object. using GMSPanoramaService
and on GMSPanoramaView
construction or move.Version 1.7 has been replaced by Version 1.7.2 and is no longer available for download.
Features
GMSPolyline
, including gradients and colors for any number of polyline segments. (Issue 4856)
GMSStyleSpan
instances, configuring a unique color or gradient over an arbitrary number of segments.GMSStrokeStyle
.GMSPath
provides a helper category to determine distance along a path.GMSStyleSpans
helper to apply repeated styles along a polyline.GMSGeocoder
now provides structured addresses using GMSAddress
, deprecating GMSReverseGeocodeResult
.GMSCameraPosition
, GMSMutableCameraPosition
.GMSMapPoint
for linear interpolation between points in Mercator space on the Earth.Resolved issues:
GMSPolyline
width is much closer to screen width. (Issue 5788, Issue 5265)GMSPolyline
performance and memory improvements. (Issue 4904)cameraForBounds:insets:
on GMSMapView
now correctly accounts for padding. (Issue 6080)Notes:
GMSMapView
no longer provides helper methods to retrieve previously added overlays, such as markers
, polylines
and groundOverlays
.Download Version 1.6.2.
Resolved issues:
Version 1.6.1 has been replaced by version 1.6.2 and is no longer available for download.
Resolved issues:
Version 1.6 has been replaced by version 1.6.2 and is no longer available for download.
Features
CGFloat
to either a float
or double
where it was more appropriate.GMSMapView
. (Issue 5882)GMSTileLayer
and GMSMarker
.GMSMapView
now requires model values to be setResolved issues:
GMSMapView
is no longer clamped to its bounds (useful if setting padding on an initially zero-sized map). (Issue 5864)GMSMapView
size or padding.GMSMarker
is removed from a GMSMapView
. (Issue 5856)GMSMapView
and GMSPanoramaView
.Download Version 1.5.
Features
GMSMarker
is now known as appearAnimation
, and may be set to kGMSMarkerAnimationNone
(default) or kGMSMarkerAnimationPop
.armv7s
slice. (Issue 4745)GMSMarker
instances:
draggable
property, and new drag delegate methods have been added to GMSMapViewDelegate
. (Issue 4975)GMSMarkerLayer
, a custom CALayer
subclass for GMSMarker
that supports animation of marker position and rotation. (Issue 4951, Issue 5743)position
will cause the marker to animate to the new location.UIImage
used by GMSMarker
now supports the images and duration properties, and will animate images with multiple frames.UIImage
used by GMSMarker
now supports alignmentRectInsets
, and will adjust groundAnchor
, infoWindowAnchor
, and the tappable region. (Issue 5729)GMSMapView
, allowing you to indicate parts of the map that may be obscured by other views; setting padding re-positions the standard map controls, and the camera and camera updates will use the padded region. (Issue 5466, Issue 5728)GMSPanoramaView
and GMSPanoramaService
now support searching for panoramas with custom radius.cameraForBounds:insets:
to GMSMapView
, allowing construction of a GMSCameraPosition
for the map from a specified GMSCoordinateBounds
.Resolved issues:
GMSMapView
. (Issue 5764)GMSMapView
through less aggressive tile caching. (Issue 5202)GMSServices
by moving some startup tasks to a background thread; obtaining this object early in your application (before creating a GMSMapView
or other objects) may improve performance. (Issue 5640)Migration from 1.4.x:
The animated
property of GMSMarker has been replaced with the new field: appearAnimation
. To maintain previous behavior, replace all references to the animated
property as follows:
marker.animated = YES;
Should be replaced with:
marker.appearAnimation = kGMSMarkerAnimationPop;
Changes to the GMSMarker
.position
property are now animated. You can disable this animation with the following sample code.
[CATransaction begin];
[CATransaction setDisableActions:YES];
marker.position = ...;
[CATransaction commit];
Resolved issues:
Resolved issues:
Features
GMSPanoramaView
using the panoramaView:didTapMarker:
delegate method on GMSPanoramaViewDelegate
. (Issue 5622)GMSPanoramaLayer
, a custom CALayer
subclass for GMSPanoramaView
that supports animation of the panorama camera.GMSPanoramaCamera
supports custom field of view (FOV).GMSTileLayer
now supports high DPI tiles for use on a Retina device. (Issue 5402)GMSMapView.camera
is now observable using KVO.fitBounds:withEdgeInsets:
to GMSCameraUpdate
. (Issue 5475)GMSMapView
to consume all gestures within its bounds may now be disabled using consumesGesturesInView
. (Issue 5552)GMSGeometryUtils
to include additional helper methods.GMSServices
may be held by applications to maintain cache and connection to Google; this can improve performance when creating and destroying many maps.GMSMapView
using UIView
animation methods.Resolved issues:
GMSMarkers
.GMSMapView
.GMSMarkers
matches the size and shape of the marker when the GMSMapView
is tilted. (Issue 5273)GMSMapView
will no longer render a single frame of black in some cases (noticeable e.g., inside UISplitViewController
on iPad).GMSGroundOverlay
sizing that prevented some images from displaying. (Issue 5663)fitBounds:withPadding:
on GMSCameraUpdate
now correctly applies padding to all edges of the bounds; previously it used 1/2 padding on each edge.Features
GMSPanoramaView
, a viewer for Street View imagery, that enables both programmatic and user control.GMSMarker
s can be shared between GMSMapView
and GMSPanoramaView
.GMSPanoramaService
may be used to load panorama data ahead of display.GMSMapView
— mapView:willMove:
and mapView:idleAtCameraPosition:
— allow you to detect the start and end of camera movement, respectively.zIndex
property on all overlays. Z-Indexes are calculated in two groups: GMSMarker
s and all other overlays.GMSGeometryUtils
methods for heading, distance, offset etc. with respect to points on the Earth.GMSGroundOverlay
no longer supports the zoomLevel
property. You can use the helper method groundOverlayWithPosition:icon:zoomLevel:
to migrate existing code.Resolved issues:
GMSPolygon
.GMSPolygon
.GMSMapView
to not be released until deceleration completed.GMSMapView
are now hidden by default. See the migration steps below if you want to enable these elements.Migration from 1.3.x:
Version 1.4 introduces changes to accessibility and ground overlays. If you make use of either of these in your application, you will have to modify any existing code as follows:
If your application relies on the accessibility elements of GMSMapView
, set the accessibilityElementsHidden
property to NO
.
mapView_.accessibilityElementsHidden = NO;
Replace direct references to the GMSGroundOverlay
zoomLevel
property with the new groundOverlayWithPosition:icon:zoomLevel:
convenience method. Alternatively, you can position the image with a geographic bounds. The below code samples are equivalent.
Version 1.3.x assigned zoomLevel directly.
GMSGroundOverlay *groundOverlay = [[GMSGroundOverlay alloc] init];
groundOverlay.icon = [UIImage imageNamed:@"newark_nj_1922.jpg"];
groundOverlay.position = CLLocationCoordinate2DMake(40.742, -74.174);
groundOverlay.zoomLevel = 13.6;
In version 1.4 and later, you can use the convenience method.
GMSGroundOverlay *groundOverlay = [GMSGroundOverlay groundOverlayWithPosition:newark
icon:[UIImage imageNamed:@"newark_nj_1922.jpg"]
zoomLevel:13.6];
From this release, we recommend that you position your ground overlay by defining its south west and north east corners.
CLLocationCoordinate2D southWest = CLLocationCoordinate2DMake(40.712216,-74.22655);
CLLocationCoordinate2D northEast = CLLocationCoordinate2DMake(40.773941,-74.12544);
GMSCoordinateBounds *overlayBounds = [[GMSCoordinateBounds alloc] initWithCoordinate:southWest
coordinate:northEast];
UIImage *icon = [UIImage imageNamed:@"newark_nj_1922.jpg"];
GMSGroundOverlay *overlay =
[GMSGroundOverlay groundOverlayWithBounds:overlayBounds
icon:[UIImage imageNamed:@"newark_nj_1922.jpg"]];
Version 1.3.1 - June 2013
Resolved issues:
GMSMapView
GMSMutablePath
using pathFromEncodedPath:
GMSMapView
in applications that also use GLKView
Features
GMSTileLayer
.GMSPolyline
and GMSPolygon
stroke.kGMSTypeNone
.CAAnimationGroup
on GMSMapLayer
.Resolved issues:
GMSPolyline
and GMSPolygon
now support greater precision at high zoomGMSPolyline
and GMSPolygon
use the correct alpha valuesGMSMapView
, allowing use within objects such as a scroll viewResolved issues:
GMSMarker
fixed.GMSPolyline
strokeColor
is no longer erroneously deallocated.Features
GMS...Options
classes have been removed from this release.GMSMarker
and GMSPolyline
, now inherit from a shared GMSOverlay
class.GMSPolygon
and GMSCircle
.width
and stroke
properties of GMSPolyline
have been renamed to strokeWidth
and strokeColor
to parallel GMSPolygon
and GMSCircle
.GMSCoordinateBounds
. The including
method has been renamed to includingCoordinate
, added includingBounds
.GMSMarker
may be animated when added to a map.GMSCameraUpdate
to create camera update objects, including operations to set a camera that presents a specified GMSCoordinateBounds
GMSUISettings
may be used to add a compass or "My Location" button (disabled by default).GMSMapViewDelegate
).markerImageWithColor:
to create tinted versions of the default marker.GMSMapLayer
, the CALayer
subclass for GMSMapView
, now supports modification of its camera properties, allowing for advanced animation effects.semaphore_wait_trap
issue resolved.Resolved issues:
visibleRegion
now reports correctly sized region on Retina Devices.UISettings
now prevents movement with zoom gestures.GMSPolyline
performance is improved for large polylines.GMSMapView
may be subclassed.renderInContext:
on the GMSMapView
layer now renders correctly; this allows for snapshots and UI effects.Migration from 1.1.x:
When upgrading to the most recent version, you will have to modify any existing code as follows:
width
and stroke
properties of GMSPolyline
with strokeWidth
and strokeColor
. The behavior is otherwise the same.including
method of GMSCoordinateBounds
with a call to includingCoordinate
.GMSGroundOverlayOptions
, GMSMarkerOptions
or GMSPolylineOptions
.GMSGroundOverlay
, GMSMarker
and GMSPolyline
are now concrete classes, not protocols. Specify them as GMSMarker *
, instead of id<GMSMarker>
.map
property instead of calling the add...Overlay
method.map
property to nil
(rather than calling remove
).Below is an example of how to add a polyline to the map in version 1.1:
GMSPolylineOptions *lineOptions = [GMSPolylineOptions options];
GMSMutablePath *path = [GMSMutablePath path];
[path addCoordinate:CLLocationCoordinate2DMake(37.35, -122.0)];
[path addCoordinate:CLLocationCoordinate2DMake(37.45, -122.0)];
lineOptions.color = [UIColor blueColor];
lineOptions.path = path;
id<GMSPolyline> line = [mapView_ addPolylineWithOptions:lineOptions];
The equivalent code in version 1.2.0 and later is:
GMSMutablePath *path = [GMSMutablePath path];
[path addCoordinate:CLLocationCoordinate2DMake(37.35, -122.0)];
[path addCoordinate:CLLocationCoordinate2DMake(37.45, -122.0)];
GMSPolyline *line = [GMSPolyline polylineWithPath:path];
line.strokeColor = [UIColor blueColor];
line.map = mapView_;
Version 1.1.2 - March 2013 Important: You will have to update your linked libraries (in the Build Phases tab) from libstdc++.dylib to libc++.dylib to verify that your existing app works with the new SDK.
Resolved issues:
GMSMapView
and GLKView
in the same app.Migrating from v1.1.1 or earlier:
Version 1.1.2 and later use libc++ instead of libstdc++. To upgrade to the most recent version of the SDK, do the following:
libstdc++.dylib
.libc++.dylib
.Features
GMSMarker
.Resolved issues:
GMSMapView
could return a nil
camera.GMSMapView
instances no longer 'camera crosstalk'.GMSMarker
with an empty title and snippet no longer shows an empty info window.Features
GMSPolyline
(and GMSPolylineOptions
) are now specified as a GMSPath
and built using a GMSMutablePath
, rather than addVertex:
etcGMSPolyline
may now be specified as geodesic.animateToCameraPosition:
method on GMSMapView
.GMSProjection
provides containsCoordinate:
and visibleRegion
helpers.Resolved issues:
GMSCameraPosition
and animateToLocation:
now clamp/wrap latitude/longitude respectively; similarly, bearing is clamped to 0 <= bearing < 360
GMSGroundOverlay
may be modified after creation.GMSPolyline
may cross the antimeridianFeatures
Resolved issues:
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4