| Version | Release Date | Notes |
|---|---|---|
| 13.12.0 | 2026-11-02 | - **Paid event callbacks** : Added delegate callbacks across ad formats to receive paid event notifications: - `GADFullScreenContentDelegate`: `ad:didRecordPaidEventWithAdValue:` - `GADBannerViewDelegate`: `bannerView:didRecordPaidEventWithAdValue:` - `GADNativeAdDelegate`: `nativeAd:didRecordPaidEventWithAdValue:` - Deprecated the `paidEventHandler` property across all ad formats in favor of the new delegate callback. - Deprecated full-screen `adWillDismissFullScreenContent:` delegate callbacks across ad formats. Use the `adDidDismissFullScreenContent:` delegate callback instead. - Fixed a [configurable adapter initialization](https://developers.google.com/admob/ios/use-configurable-adapter-initialization.md.txt) bug that prevented some adapters from initializing. - Added the `coarseLocationCollectionEnabled` property to the `GADRequestConfiguration`. class - Added mediation APIs and ad configuration support for swipeable interstitial ads. - Fixed a clickthrough issue for app install ads that prevented navigation to the fallback landing page when App Store content failed to load. - **Open Measurement**: Updated OM SDK to 1.6.11. |
| 13.11.0 | 2026-09-29 | - Added official support for iPhone Duo: - The `GADPortraitAnchoredAdaptiveBannerAdSizeWithWidth` and `GADLandscapeAnchoredAdaptiveBannerAdSizeWithWidth` functions now require invocation on the main queue. - Fullscreen ad formats loaded on the iPhone Duo use the size of the active screen when loading. - Updated adaptive banner ad size APIs to use the current active screen to compute heights on iPhone Duo. - Fixed a crash that could occur when loading banner ads inside a SwiftUI `UIViewRepresentable`. - Fixed a rare crash caused by unsafe semaphore usage that could occur when dismissing video ads. |
| 13.10.0 | 2026-09-17 | - Introduced public header files for the picture-in-picture Beta APIs. To integrate the picture-in-picture ad format, use `#import <GoogleMobileAds/GoogleMobileAds_Beta.h>` in Objective-C and `import GoogleMobileAds_Private` in Swift. - Fixed a crash caused by invoking `GADVideoController` APIs on mediated native ads. - Google Mobile Ads SDK supports iOS 27. - **Open Measurement**: Updated OM SDK to 1.6.10. |
| 13.9.0 | 2026-08-26 | - Added support for signal collection and rendering APIs for swipeable interstitial ads: - Added the `+loadWithAdResponseString:completionHandler:` method to `GADSwipeableInterstitialAd`. - Added the `GADSwipeableInterstitialSignalRequest` class. |
| 13.8.0 | 2026-08-17 | - When using mediation with custom event ad sources, `GADResponseInfo.loadedAdNetworkResponseInfo.adNetworkClassName` now returns your custom event class name instead of `GADMAdapterCustomEvents`. - Refactored the screen-fit validation logic for full-screen ads to prevent unintended dismissals during device orientation changes on iPad. - Added a `GADDisableAdInspector` Boolean plist key to [disable ad inspector](https://developers.google.com/admob/ios/ad-inspector/disable-ad-inspector.md.txt). |
| 13.7.0 | 2026-07-22 | - Updated the [`CGSizeFromGADAdSize`](https://developers.google.com/admob/ios/api/reference/Functions.md.txt#cgsizefromgadadsize) function to default to portrait orientation when computing fluid ad widths on a background thread. This replaces the previous behavior of using the most recently cached orientation. |
| 13.6.0 | 2026-06-24 | - Resolved Xcode compiler warnings caused by missing beta header files in the Google Mobile Ads SDK version 13.3.0 umbrella header. |
| 13.5.0 | 2026-06-09 | - Added APIs for the `GADSwipeableInterstitialAd` format. Swipeable interstitial ads are in private beta. Contact your account manager to request access. - Updated the SDK's crash reporter to properly chain with previously attached signal handlers so crash reporting tools can capture the complete stack trace. - **Ad preloading** : Added an `adResponseInfoWithPreloadID:` method to inspect the next preloaded ad's response info without removing it from the queue. |
| 13.4.0 | 2026-05-18 | - Updated the minimum supported Xcode version to 26.2. - Improved thread safety for third-party native ad rendering by ensuring media views are always accessed on the main thread. |
| 13.3.0 | 2026-04-27 | - Deprecated the `tagForChildDirectedTreatment` property and the `tagForUnderAgeOfConsent` property on [`GADRequestConfiguration`](https://developers.google.com/admob/ios/api/reference/Classes/GADRequestConfiguration.md.txt). Use the new [`ageRestrictedTreatment`](https://developers.google.com/admob/ios/api/reference/Classes/GADRequestConfiguration.md.txt#agerestrictedtreatment) property to signal ad requests for child and teen treatment. - Introduced public header files for the Ad Preloading Beta APIs. To integrate with ad preloading, use `#import <GoogleMobileAds/GoogleMobileAds_Beta.h>` in Objective-C and `import GoogleMobileAds_Private` in Swift. - **Open Measurement**: Updated OM SDK to 1.6.5. |
| 13.2.0 | 2026-04-02 | - Bug fixes and performance improvements. |
| 13.1.0 | 2026-02-24 | - Deprecated `GADErrorOSVersionTooLow`. This error is now redundant as Google Mobile Ads SDK's minimum deployment target matches the minimum OS version to receive ads. |
| 13.0.0 | 2026-02-04 | > [!WARNING] > This release is a MAJOR version update with several breaking changes. See [Migrate from v12 to v13](https://developers.google.com/admob/ios/migration.md.txt#migrate-to-sdk-v13) for more details. - **Breaking changes** : - Increased the minimum deployment target to iOS 13.0. - Google Mobile Ads SDK raises an exception if an object that is not a `String` type is detected in the [`neighboringContentURLStrings`](https://developers.google.com/admob/ios/api/reference/Classes/GADRequest.md.txt#neighboringcontenturlstrings) array. - Many previously deprecated APIs have been removed. - Added support for large anchored adaptive banners. Large anchored adaptive banners are designed to increase engagement and revenue. Request large anchored adaptive banners using the following functions: - [`GADLargePortraitAnchoredAdaptiveBannerAdSizeWithWidth()`](https://developers.google.com/admob/ios/api/reference/Functions.md.txt#gadlargeportraitanchoredadaptivebanneradsizewithwidth) - [`GADLargeLandscapeAnchoredAdaptiveBannerAdSizeWithWidth()`](https://developers.google.com/admob/ios/api/reference/Functions.md.txt#gadlargelandscapeanchoredadaptivebanneradsizewithwidth) - [`GADLargeAnchoredAdaptiveBannerAdSizeWithWidth()`](https://developers.google.com/admob/ios/api/reference/Functions.md.txt#gadlargeanchoredadaptivebanneradsizewithwidth) - The following functions are deprecated: - `GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth` - `GADLandscapeAnchoredAdaptiveBannerAdSizeWithWidth` - `GADPortraitAnchoredAdaptiveBannerAdSizeWithWidth` - **Swift 6 concurrency** : - Continued incremental migration to support Swift 6's concurrency model. - Updated all SDK `os_log` calls to use the `{public}` visibility specifier to prevent the logs from being redacted in the console. - Fixed an issue where `GADErrorInvalidRequest` was reported instead of `GADErrorTimeout` for certain request timeouts. - Fixed a crash on iOS 26 iPads that occurred when displaying banner ads behind `UIPrintController`. |
| 12.14.0 | 2025-11-18 | - Bug fixes and performance improvements. |
| 12.13.0 | 2025-11-06 | - Deprecated the `-registerAdView:clickableAssetViews:nonclickableAssetViews:` and `-unregisterAdView` APIs on the `GADNativeAd` object. Use [`GADNativeAdView`](https://developers.google.com/admob/ios/native/advanced.md.txt#gadnativeadview) to render native ads instead. |
| 12.12.0 | 2025-10-02 | - Fixed a crash on iOS 15 and lower when setting the `scene` property on a `GADRequest` object. |
| 12.11.0 | 2025-09-08 | - Bug fixes and performance improvements. |
| 12.10.0 | 2025-09-03 | - Google Mobile Ads SDK supports iOS 26. - Bug fixes and performance improvements. |
| 12.9.0 | 2025-08-11 | - Placement IDs are now correctly sent for native ad requests. |
| 12.8.0 | 2025-07-28 | - Improved full-screen ad rendering and impression reporting accuracy on iOS 26 iPads with adjustable windows - Resolved an issue where the screen can become unresponsive when a user immediately dismissed an in-app App Store page. |
| 12.7.0 | 2025-07-08 | - **Ad Inspector**: Added support for configuring out-of-context test ads in ad inspector with additional request parameters. **Note:** The ad inspector UI will roll out this feature at a later date, requiring a minimum SDK version of 12.7.0. - Allowlisted publishers now have placement ID support for all ad formats. |
| 12.6.0 | 2025-06-10 | - Fixed an issue where a collapsible banner ad could be expanded on top of another ad. **Note:** To see the fix, a minimum SDK version of 12.0.0 is required. |
| 12.5.0 | 2025-05-27 | - Made changes to the way the SDK interacts with `AVAudioSession` that improves compatibility with Unity's audio engine. - The unmute ad button now unmutes the device for all ad formats, even if the device is in silent mode. Use the [`audioSessionIsApplicationManaged`](https://developers.google.com/admob/ios/api/reference/Classes/GADAudioVideoManager.md.txt#audiosessionisapplicationmanaged) API to change the default behavior. |
| 12.4.0 | 2025-05-07 | - Resolved an issue preventing custom clicks on custom native video ads. |
| 12.3.0 | 2025-04-16 | - Resolved a crash related to `SKOverlay` dismissal in Unity apps. - The unmute native ad button now unmutes the device, even if the device is in silent mode. Use the [`audioSessionIsApplicationManaged`](https://developers.google.com/admob/ios/api/reference/Classes/GADAudioVideoManager.md.txt#audiosessionisapplicationmanaged) API to change the default behavior. |
| 12.2.0 | 2025-03-12 | - Bug fixes and performance improvements. |
| 12.1.0 | 2025-02-26 | - Bug fixes and performance improvements. |
| 12.0.0 | 2025-02-03 | > [!WARNING] > This release is a MAJOR version update with several breaking changes. See [Migrate from v11 to v12](https://developers.google.com/admob/ios/migration.md.txt#migrate-to-sdk-v12) for more details. - **Breaking changes** : - Updated the minimum supported Xcode version to 16.0. - Updated Swift API names to follow the naming conventions from Apple's Swift [API Design Guidelines.](https://www.swift.org/documentation/api-design-guidelines/) - Many previously deprecated APIs have been removed. - **Inline adaptive ads** : - Calling [`CGSizeFromGADAdSize(_:)`](https://developers.google.com/admob/ios/api/reference/Functions.md.txt#cgsizefromgadadsize) with an inline adaptive ad size now returns `0` height until Google Mobile Ads SDK returns an ad. - **Swift 6 concurrency** : - Started incremental migration to support Swift 6's concurrency model. - **Custom targeting** : - The `customTargeting` dictionary on `GADRequest` now uses `Any` instead of `String` as the value type. |
| 11.13.0 | 2024-12-03 | - Optimized video ad memory allocation to prevent resource overload, reducing [`AVErrorMediaServicesWereReset`](https://developer.apple.com/documentation/avfoundation/averror/averrormediaserviceswerereset) errors and improving playback stability. |
| 11.12.0 | 2024-11-07 | - Fixed an issue where `GADFullScreenContentDelegate` methods were not called if the ad object was released before the ad finishes presenting. - **Open Measurement**: Updated to OM SDK 1.5.2. |
| 11.11.0 | 2024-10-21 | - Deprecated `GADErrorMediationNoFill`. - **Interscroller ads:** Deprecated `GADMediationInterscrollerAd` and `-loadInterscrollerAdForAdConfiguration:completionHandler:`. |
| 11.10.0 | 2024-09-18 | - Made video buffering changes to improve playback performance on cellular connection. |
| 11.9.0 | 2024-09-11 | - Official release for iOS 18 support. - Fixed an issue that would prevent app open ads from hiding the status bar. - Updated debug console logs to use `OSLog` with the subsystem name `com.google.GoogleMobileAds`. - Fixed a bug related to MarketplaceKit that would cause the SDK to crash when running on MacOS. |
| 11.8.0 | 2024-08-13 | - **Native ads:** Fixed a bug where playing a paused video triggered an extra [`GADVideoControllerDelegate`](https://developers.google.com/admob/ios/api/reference/Protocols/GADVideoControllerDelegate.md.txt) play and pause callback. |
| 11.7.0 | 2024-07-15 | - Deprecated [`GADQueryInfo`](https://developers.google.com/admob/ios/api/reference/Classes/GADQueryInfo) APIs. For generating query information, use [`+[GADMobileAds generateSignal:completionHandler:]`](https://developers.google.com/admob/ios/api/reference/Classes/GADMobileAds.md.txt#+generatesignal:completionhandler:) instead. - Allowlisted publishers can now use `GADRequest.customTargeting` to segment mediation groups using custom key-value pairs. |
| 11.6.0 | 2024-06-17 | - Added a dependency on [MarketplaceKit](https://developer.apple.com/documentation/marketplacekit). This requires apps to build with Xcode 15.3 or above. - MarketplaceKit is Swift-only, so a Swift placeholder file has been added to the distribution so Swift standard libraries are included in apps even if they don't contain other Swift files. |
| 11.5.0 | 2024-05-16 | - Added the [`isCollapsible`](https://developers.google.com/admob/ios/api/reference/Classes/GADBannerView.md.txt#iscollapsible) property to `GADBannerView` to check if a returned banner is collapsible. - The `userInteractionEnabled` status of native ad asset views is now restored after setting the asset views to `nil`. - **Ad Inspector**: Added support for displaying additional privacy signals such as TFUA and TFCD. **Note:** The ad inspector UI will roll out this feature at a later date, requiring a minimum SDK version of 11.5.0. |
| 11.4.0 | 2024-05-06 | - Updated the signing identity from `AdMob Inc.` to `Google LLC` using team ID `EQHXZ8M8AV`. If this triggers a notice in Xcode, select "Accept Change" to accept the new identity. |
| 11.3.0 | 2024-04-11 | - Added the `adUnitID` property to `GADAppOpenAd`. |
| 11.2.0 | 2024-03-14 | - Added support for [privacy manifest files](https://developer.apple.com/documentation/bundleresources/privacy_manifest_files?language=swift). - **Open Measurement**: Updated to OM SDK 1.4.12. - Improved some response error codes to correctly identify network failures instead of no fills. - Updated the SDK's `Info.plist` to work around a Swift Package Manager issue on Xcode 15.3. - **Ad Inspector** : Added support for displaying `.plist` information and IAB TCF values. **Note:** The ad inspector UI will roll out this feature at a later date, requiring a minimum SDK version of 11.2.0. |
| 11.1.0 | 2024-03-06 | - Fixed an issue where loading video ads could trigger a warning message to the console about main thread utilization. - **Ad Inspector** : Added support for displaying the user's [app tracking authorization status.](https://developer.apple.com/documentation/apptrackingtransparency/attrackingmanager/authorizationstatus) **Note:** The ad inspector UI will roll out this feature at a later date, requiring a minimum SDK version of 11.1.0. |
| 11.0.1 | 2024-02-09 | - **Open Measurement** : - Rolled back to OM SDK 1.4.8. - Works around an unintended global `adView` symbol present in OM SDK 1.4.10, that causes duplicate symbol errors if OM SDK 1.4.10 is included by multiple libraries. |
| 11.0.0 | 2024-02-06 | > [!WARNING] > This release is a MAJOR version update with several breaking changes. See [Migrate from v10 to v11](https://developers.google.com/admob/ios/migration.md.txt#migrate-to-sdk-v11) for more details. - **Breaking changes** : - The SDK no longer depends directly on GoogleAppMeasurement. To continue collecting user metrics in AdMob, link your AdMob app to Firebase and integrate the Google Analytics for Firebase SDK into your app. - Updated the minimum supported Xcode version to 15.1. - Updated the minimum deployment target to iOS 12. - Updated the minimum OS required to receive ads to iOS 13. - Many previously deprecated APIs have been removed. - **Open Measurement:** Updated to OM SDK 1.4.10. - **Full-screen ads** : - `UIViewController` references for full-screen ads are now nullable and not required. The SDK uses the app's main window to look up view controllers automatically when one is not provided. - **Testing** : - Updated `isTesting` APIs: [`GADMediationAdConfiguration.isTestRequest`](https://developers.google.com/admob/ios/api/reference/Classes/GADMediationAdConfiguration.md.txt#istestrequest) and [`GADCustomEventRequest.isTesting`](https://developers.google.com/admob/ios/api/reference/Classes/GADCustomEventRequest.md.txt#istesting) now returns true when the device is a simulator or is defined as a test device in the AdMob UI. - **Ad Inspector** : - Ad Inspector now displays any errors encountered during session start. - Fixed a rare crash associated with Ad Inspector during SDK initialization. |
| 10.14.0 | 2023-11-29 | - Deprecated `GADSimulatorID`. Simulators are already in test mode by default. - Deprecated `-setSameAppKeyEnabled:`. Use `-setPublisherFirstPartyIDEnabled:` instead. - Added extra deprecation warnings for `GADCustomEvent` APIs. Use `GADMediationAdapter` APIs instead. |
| 10.13.0 | 2023-11-07 | - Added the `publisherPrivacyPersonalizationState` property for the [Publisher Privacy Treatment](https://support.google.com/admob/answer/14323214) API (Beta). - Deprecated `GADAdFormatUnknown`. |
| 10.12.0 | 2023-10-04 | - Deprecated the `childDirectedTreatment` property in `GADMediationAdConfiguration`. Use `GADMobileAds.sharedInstance.requestConfiguration.tagForChildDirectedTreatment` instead. |
| 10.11.0 | 2023-09-25 | - Fixed a bug that could cause some creatives to display incorrectly when an ad is loaded in one orientation but presented in another. |
| 10.10.0 | 2023-08-30 | - Official release for iOS 17 support. - **Open Measurement:** Updated to OM SDK 1.4.8. - **Ad inspector**: Added SDK support to display plugin information. - Removed console logs that recommend adding simulator IDs in the [`testDeviceIdentifiers`](https://developers.google.com/admob/ios/api/reference/Classes/GADRequestConfiguration.md.txt#testdeviceidentifiers) API. Simulators are already in test mode by default. |
| 10.9.0 | 2023-08-02 | - **Open Measurement:** Updated to OM SDK 1.4.6. - **Ad inspector**: Added SDK support for exporting ad responses. - Fixed audio issue where even if the ad is muted, the audio session would unexpectedly stop the background music when the video ends. - Added support for passing an ad unit ID when generating `GADQueryInfo`. |
| 10.8.0 | 2023-07-12 | - Made minor changes to the way `adWillPresentFullScreenContent:`, `adWillDismissFullScreenContent:`, and `adDidDismissFullScreenContent:` delegate callbacks are handled by delegates for mediated ads. These changes make mediated ads behave more like first-party ads. - Third-party SDKs that call `adWillPresentFullScreenContent:` followed by `adDidDismissFullScreenContent:` multiple times now trigger multiple callbacks, rather than only for the first set of calls. - When third-party full screen ads fail to present, `ad:didFailToPresentFullScreenContentWithError:` is called instead of `adWillPresentFullScreenContent:` and `adDidDismissFullScreenContent:`. |
| 10.7.0 | 2023-06-26 | - **GADRequestConfiguration:** Deprecated the `tagForChildDirectedTreatment:` method and added a `tagForChildDirectedTreatment` read-write property. - **GADRequestConfiguration:** Deprecated the `tagForUnderAgeOfConsent:` method and added a `tagForUnderAgeOfConsent` read-write property. - Deprecated `sdkVersion`. Use `versionNumber` instead. - Non-rendering adapters can now be kept for signal collection. |
| 10.6.0 | 2023-06-01 | - Reduced memory usage when many parallel ad requests are made. |
| 10.5.0 | 2023-05-15 | - Fixed a memory leak that occurred when creating a `GADQueryInfo` object. |
| 10.4.0 | 2023-04-20 | - Updated minimum supported Xcode version to 14.1. - armv7 is not supported in Xcode 14 and has been removed from the SDK. - The minimum deployment target has been increased to iOS 11.0. - **Ad inspector**: Added SDK support to show ad unit names in the ad inspector UI. |
| 10.3.0 | 2023-03-27 | - Bug fixes and performance improvements. |
| 10.2.0 | 2023-03-06 | - Added an ` isMuted` property to `GADVideoController`. |
| 10.1.0 | 2023-02-16 | - Bug fixes and performance improvements. |
| 10.0.0 | 2023-01-26 | > [!WARNING] > This release is a MAJOR version update with several breaking changes. See [Migrate from v9 to v10](https://developers.google.com/admob/ios/migration.md.txt#migrate-to-sdk-v10) for more details. - **Breaking changes** : - Ads are no longer served on iOS 11. iOS 12 is required to retrieve ads, though the minimum deployment target is still iOS 10.0. - Removed the following already deprecated fields: - `userBirthday` - `userGender` - `userHasLocation` - `userLatitude` - `userLocationAccuracyInMeters` - `userLocationDescription` - `userLongitude` - **Native ads** : Fixed a bug where `GADMediaContent.mainImage ` returned `nil` even though the image rendered successfully in a `GADMediaView`. - Ad inspector's out of context native ads now have media views. - Deprecated the following fields in `GADMediationAdConfiguration`: - `userHasLocation` - `userLatitude` - `userLocationAccuracyInMeters` - `userLongitude` - Removed bitcode from Google Mobile Ads SDK build. |
| 9.14.0 | 2022-12-08 | - **App Open Ads:** `+loadWithAdUnitID:request:orientation:completionHandler:` has been deprecated and replaced with `+loadWithAdUnitID:request:completionHandler:`. Loading app open ads now assumes the current orientation of the device, matching other full-screen formats. - Added mediation support for app open ads. - **Ad Inspector**: Added SDK support for requesting and showing ads through the Ad Inspector UI. |
| 9.13.0 | 2022-11-07 | - Supported additional click actions in native ads. - Bug fixes and performance improvements. |
| 9.12.0 | 2022-10-24 | - Added `GADQueryInfo` to support Signals Collection and Rendering. - Updated documentation for audio APIs. |
| 9.11.0 | 2022-09-20 | - Bug fixes and performance improvements. |
| 9.10.0 | 2022-09-07 | - Official release for iOS 16 support. - **iLTV:** Added the following properties to `GADAdNetworkResponseInfo`: - ` adSourceID adSourceInstanceName adSourceName` Added the following property to `GADResponseInfo`: - ` extrasDictionary` |
| 9.9.0 | 2022-08-11 | - Bug fixes and performance improvements. |
| 9.8.0 | 2022-07-27 | - Rewarded mediation: Deprecated `didRewardUserWithReward:` in `GADMediationRewardedAdEventDelegate` in favor of `didRewardUser`. The ad reward provided by `didRewardUserWithReward:` has always been a no-op, with the ad reward value coming from the ad unit settings in the AdMob UI. - **Ad inspector**: Added SDK support for exporting ad requests. |
| 9.7.0 | 2022-07-07 | - Added the `loadedAdNetworkResponseInfo` property to `GADResponseInfo`, returning information about the ad network that loaded the ad. - Added the `adSourceInstanceID` property to `GADAdNetworkResponseInfo`. > [!WARNING] > **Beta:** The `adSourceInstanceID` property is in beta. The return value might change without an SDK release. |
| 9.6.0 | 2022-06-13 | - Added support for ad monetization within `WKWebView`. See [Integrate the WebView API for ads](https://developers.google.com/admob/ios/webview) for more details. |
| 9.5.0 | 2022-05-16 | - Native Mediation: `nativeAdDidRecordImpression:` and `nativeAdDidRecordClick:` callbacks are now invoked on mediated native ads. - Replaced `extern` with `FOUNDATION_EXPORT` across public headers to support compatibility with C++ headers. |
| 9.4.0 | 2022-04-26 | - Updated minimum supported Xcode version to 13.2.1. - Bug fixes and performance improvements. |
| 9.3.0 | 2022-04-07 | - Bug fixes and performance improvements. |
| 9.2.0 | 2022-03-21 | - **Open Measurement:** Updated to OM SDK 1.3.30. - Added warnings when application code references `adDidPresentFullScreenContent` instead of the newer `adWilllPresentFullScreenContent` in [`GADFullScreenContentDelegate`](https://developers.google.com/admob/ios/api/reference/Protocols/GADFullScreenContentDelegate.md.txt) |
| 9.1.0 | 2022-02-28 | - Bug fixes and performance improvements. |
| 9.0.0 | 2022-02-01 | - Major version 9 changes, as described in [Migrate to SDK v9](https://developers.google.com/admob/ios/migration.md.txt). |
| 8.13.0 | 2021-11-17 | - Deprecated the constant [`kGAMSimulatorID`](https://developers.google.com/admob/ios/api/reference/Constants.md.txt#kgamsimulatorid) in `GAMRequest`. Use [`GADSimulatorID`](https://developers.google.com/admob/ios/api/reference/Constants.md.txt#gadsimulatorid) in `GADRequestConfiguration` instead. - Deprecated the [`credentials`](https://developers.google.com/admob/ios/api/reference/Classes/GADAdNetworkResponseInfo.md.txt#credentials) property in `GADAdNetworkResponseInfo`. Use the new [`adUnitMapping`](https://developers.google.com/admob/ios/api/reference/Classes/GADAdNetworkResponseInfo.md.txt#adunitmapping) property of the same class. |
| 8.12.0 | 2021-10-11 | - Fixed a bug where the Native Validator could cause a crash when a native ad view is removed from the view hierarchy in test mode. - Deprecated all constants with `kGAD` prefix. Use those with `GAD` prefix instead. |
| 8.11.0 | 2021-09-16 | - Official release for iOS 15 support. - Added guards to prevent apps from crashing when Google Mobile Ads SDK is run on iOS 9 or below. The SDK is only supported in iOS 10+ and is no-op otherwise. |
| 8.10.0 | 2021-09-01 | - Released [inline adaptive banner APIs](https://developers.google.com/admob/ios/banner/inline-adaptive.md.txt). |
| 8.9.0 | 2021-08-10 | - Fixed an uncommon bug affecting iOS 15 betas where full screen web views may not be sized correctly for multiscene apps. - Fixed a bug where a call to [`registerAdNetworkExtras:`](https://developers.google.com/admob/ios/api/reference/Classes/GADRequest.md.txt#-registeradnetworkextras:) would crash if the `GADRequest` object was created via the [copy](https://developer.apple.com/documentation/objectivec/nsobject/1418807-copy) method. |
| 8.8.0 | 2021-07-20 | - Added logic to prevent rare cases where multiple in-app stores could be presented on top of each other. |
| 8.7.0 | 2021-06-24 | - Added [`bannerViewDidRecordClick:`](https://developers.google.com/admob/ios/api/reference/Protocols/GADBannerViewDelegate.md.txt#-bannerviewdidrecordclick:) and [`adDidRecordClick:`](https://developers.google.com/admob/ios/api/reference/Protocols/GADFullScreenContentDelegate.md.txt#-addidrecordclick:) delegate APIs for ad clicks reporting. - Changed property [`keywords`](https://developers.google.com/admob/ios/api/reference/Classes/GADRequest.md.txt#keywords) type to `NSArray<NSString *>` in [`GADRequest`](https://developers.google.com/admob/ios/api/reference/Classes/GADRequest.md.txt). |
| 8.6.0 | 2021-06-07 | - Deprecated the `mediaView` property in [`GADCustomNativeAd`](https://developers.google.com/admob/ios/api/reference/Classes/GADCustomNativeAd.md.txt). Instead, use the new [`mediaContent`](https://developers.google.com/admob/ios/api/reference/Classes/GADCustomNativeAd.md.txt#mediacontent) property of the same class. - Fixed a bug where video mute / unmute delegate callbacks did not get invoked for bidding native ads. - Updated the `kGADSimulatorID` type from `id` to `NSString*` to avoid extra type casting in Swift. |
| 8.5.0 | 2021-05-07 | - Fixed a bug where an experimental ad format would not be dismissed on ad dismissal if presented multiple times. |
| 8.4.0 | 2021-04-19 | - Increased support for `SKAdNetwork` conversion events using `SKAdImpression`. |
| 8.3.0 | 2021-03-25 | - Added support for Publisher first-party ID (formerly known as same app key) to help you deliver more relevant and personalized ads by using data collected from your apps. - Added `adWillDismissFullScreenContent:` to `GADFullScreenContentDelegate`. - Fixed an issue where `adDidPresentFullScreenContent:` was called immediately prior to presentation rather than immediately after. |
| 8.2.0.1 | 2021-03-12 | - Fixed the CocoaPods install error "*Can't merge user_target_xcconfig*" that occurred when using multiple pods with different `user_target_xcconfig` settings. **Note:** This is a [CocoaPods only](https://github.com/CocoaPods/Specs/blob/master/Specs/5/9/a/Google-Mobile-Ads-SDK/8.2.0.1/Google-Mobile-Ads-SDK.podspec.json#L47) release that uses the version 8.2.0 binary. |
| 8.2.0 | 2021-03-11 | - Added additional `SKAdNetwork` support in preparation for `AppTrackingTransparency` enforcement. - Removed a `UIWindowScene` macro definition only needed in Xcode versions prior to 11. |
| 8.1.0 | 2021-02-19 | - Deprecated `disableAutomatedInAppPurchaseReporting` and `enableAutomatedInAppPurchaseReporting`. IAP reporting has been removed from the SDK. These methods are now no-ops. - Added flags to reduce SDK access to `CTTelephonyNetworkInfo` APIs. |
| 8.0.0 | 2021-02-01 | - Major version 8 changes, as described in [Prepare for SDK v8](https://developers.google.com/admob/ios/migration.md.txt). - Improved SDK performance when making large numbers of requests concurrently. - Removed i386 architecture support. 32-bit simulators are no longer supported by Xcode. - Fixed a bug where `adapterVersion` in the `GADMediationAdapter` protocol had conflicts with `NSObject` in Swift. |
| 7.69.0 | 2020-12-03 | - Required apps to build against Xcode 12.0 or higher. - Added an arm64 simulator slice to allow testing on simulators for Apple Silicon Mac platforms. - Added a [`styleID`](https://developers.google.com/admob/ios/api/reference/Classes/GADDynamicHeightSearchRequest#styleid) parameter to `GADDynamicHeightSearchRequest`. - Added the [`-adDidRecordImpression:`](https://developers.google.com/admob/ios/api/reference/Protocols/GADFullScreenContentDelegate.md.txt#-addidrecordimpression:) callback to `GADFullScreenContentDelegate` for fullscreen beta formats. - Added support for the [`NSUserDefaults`](https://developer.apple.com/documentation/foundation/nsuserdefaults) `gad_has_consent_for_cookies`. Google Mobile Ads SDK will enable [limited ads (LTD)](https://support.google.com/admob/answer/10105530) when the `gad_has_consent_for_cookies` preference is set to zero. See [setting consent for cookies](https://developers.google.com/admob/ios/global-settings.md.txt#setting_consent_for_cookies) for more details. - Google Mobile Ads SDK will disable transmission of the Advertising Identifier (IDFA) when the `GADMobileAds.sharedInstance().requestConfiguration.tag` is called with `forChildDirectedTreatment: true` (see [child-directed setting](https://developers.google.com/admob/ios/targeting.md.txt#child-directed_setting)), or `GADMobileAds.sharedInstance().requestConfiguration.tagForUnderAgeOfConsent(true)` is called (see [users under the age of consent setting](https://developers.google.com/admob/ios/targeting.md.txt#users_under_the_age_of_consent)). |
| 7.68.0 | 2020-11-04 | - Updated the SDK from a `.framework` to a `.xcframework`. CocoaPods 1.9.0 or higher is now required for CocoaPod installations. - Removed arm64e from the distribution. Local testing on arm64e will no longer be available. - Added Ad Inspector Beta. - Fixed a bug where the `rootViewController` of `GADNativeCustomTemplateAd` retains a strong pointer to the ad. |
| 7.67.0 | 2020-10-21 | - Released new beta APIs for interstitial and rewarded ads. New APIs provide the same functionality but have improved consistency. - Added the `neighboringContentURLStrings` property to `GADRequest`. - Added APIs for the `GADRewardedInterstitialAd` format. Rewarded interstitial ads are currently in private beta. Reach out to your account manager to request access. - Fixed a bug where ad landing pages are cut off on devices with notches. |
| 7.66.0 | 2020-09-28 | - **Banner Ads:** Added the `adViewDidRecordImpression:` delegate method to `GADBannerViewDelegate`. |
| 7.65.0 | 2020-09-03 | - Requires apps to build against Xcode 11.0 or higher. - Deprecated the `GADInstreamAd` format. - **Test Ads** : [Adding a test device](https://developers.google.com/admob/ios/test-ads.md.txt#add_your_test_device) is now supported in cases where IDFA is unavailable. |
| 7.64.0 | 2020-08-11 | - Official release version for iOS 14. - Added support for App Tracking Transparency. See [request App Tracking Transparency authorization](https://developers.google.com/admob/ios/ios14#request) for more information. - Added support for `SKAdNetwork`. We strongly recommend that you [register Google ad networks](https://developers.google.com/admob/ios/ios14#skadnetwork) in your app. - Google Mobile Ads SDK is now distributed with the [User Messaging Platform SDK](https://developers.google.com/admob/ios/privacy.md.txt). - For CocoaPods users, the minimum deployment target is now 9.0. - Fixed a bug causing `GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth()` to return sizes for the incorrect orientation. - Added a `responseInfo` property to `GADNativeAd` and deprecated the `adNetworkClassName` property. - Added a `sdkVersion` property to `GADMobileAds` and deprecated the `sdkVersion` method in `GADRequest`. |
| 7.63.0 | 2020-07-28 | - **App Open Ads:** Changed `GADAppOpenAd` to be a full screen format. App open ads are currently in private beta. Reach out to your account manager to request access. - **Interstitial Mediation:** `interstitialDidDismissScreen:` callbacks from mediation adapters are now de-duplicated. |
| 7.62.0 | 2020-07-10 | - Fixed bug where videos would need to be clicked twice to play after being paused due to removing headphones. |
| 7.61.0 | 2020-06-17 | - Added the `dictionaryRepresentation` property to `GADResponseInfo` to enable easier logging of response info. - Removed the `DFPCustomRenderedAd` class, an unused ad format class that apps shouldn't reference. |
| 7.60.0 | 2020-05-20 | - **Rewarded Ads** : Modified `serverSideVerificationOptions` property of `GADRewardedAd` to be `strong` instead of `copy`. - Implemented the `description` method on `GADResponseInfo` and `GADAdNetworkResponseInfo` for easier logging. - All presentation errors (e.g., `rewardedAd:didFailToPresentWithError:`) now always return a code from `GADPresentationErrorCode`. Mediation presentation errors are surfaced as [underlying errors](https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/ErrorHandlingCocoa/ErrorObjectsDomains/ErrorObjectsDomains.html#//apple_ref/doc/uid/TP40001806-CH202-CJBDCIJJ). |
| 7.59.0 | 2020-05-06 | - **Open Measurement:** Updated to OM SDK 1.3.3. - **Interstitial Ads:** Fixed a bug where interstitials on iPad could rotate to unsupported orientations, causing UI issues. - **Test Ads:** Updated the test ad label to read "Test mode" instead of "Test Ad" and updated the label UI. |
| 7.58.0 | 2020-04-13 | - Minimum Xcode version support increased to 11.0. - Added the `adNetworkInfoArray` property to `GADResponseInfo`. This property surfaces metadata about mediation networks called as part of this ad response. - Disabled accessibility for hidden ad elements so tools like VoiceOver do not call out inactive elements. |
| 7.57.0 | 2020-03-18 | - Deprecated `GADRewardBasedVideoAd`. All clients should use `GADRewardedAd`. - Improved error messages for "adapter not found" errors. Error messages now contain the name of the adapter. - Fixed a `GADRewardedAd` issue where the `rewardedAd:didFailToPresentWithError:` method would not be called back in cases where no rewarded ad had been loaded. - Fixed a potential crash that could occur if creatives attempted to load non-HTTP URLs inside a `SafariViewController`. |
| 7.56.0 | 2020-02-28 | - Added [`disableAutomatedInAppPurchaseReporting`](https://developers.google.com/admob/ios/api/reference/Classes/GADMobileAds.md.txt#-disableautomatedinapppurchasereporting) and [`enableAutomatedInAppPurchaseReporting`](https://developers.google.com/admob/ios/api/reference/Classes/GADMobileAds.md.txt#-enableautomatedinapppurchasereporting) instance methods on `GADMobileAds` and deprecated the `disableAutomatedInAppPurchaseReporting` class method. Call `disableAutomatedInAppPurchaseReporting` prior to initializing the Google Mobile Ads SDK or loading ads to disable automated IAP reporting. - Added the [`disableMediationInitialization`](https://developers.google.com/admob/ios/api/reference/Classes/GADMobileAds.md.txt#-disablemediationinitialization) method to `GADMobileAds`. Call this method prior to initializing the Google Mobile Ads SDK to disable mediation adapter initialization. > [!WARNING] > **Warning:** Calling this method may negatively impact your Google mediation performance. This method should only be called if you include Google mediation adapters in your app, but you won't use mediate through Google during a particular app session (for example, you are running an A/B mediation test). - Removed i386 architecture. 32-bit simulator support no longer exists. |
| 7.55.1 | 2020-02-14 | - **Rewarded ads** : Fixed a bug where `rewardedAd:didFailToPresentWithError:` returned type `NSString` for the error instead of `NSError`. |
| 7.55.0 | 2020-02-04 | - Removed all references to `UIWebView`. `UIWebView` is no longer supported. |
| 7.54.0 | 2020-01-28 | - **Open Measurement:** Updated to OM SDK 1.3.1. - Enabled WKWebView as the SDK default across all web views. - Added support for reading consent parameters from IAB TCF v2.0 and the IAB `us_privacy` string. |
| 7.53.1 | 2019-12-19 | - Renamed the `kGADErrorAppIDMissing` error code to `kGADErrorApplicationIdentifierMissing`. - **Rewarded Mediation** : Fixed a bug where bidding did not work when using the [GADRewardedAd](https://developers.google.com/admob/ios/api/reference/Classes/GADRewardedAd.md.txt) API. |
| 7.53.0 | 2019-12-12 | - **Open Measurement:** Updated to OM SDK 1.2.21. - **Interstitial/Rewarded Ads** : Added the `canPresentFromViewController:` method. Multiscene applications can use this method to check whether the ad can still be presented when the scene changes size. - **Interstitial Ads** : `interstitialDidFailToPresentScreen:` is now called when trying to present an ad that isn't ready or an ad that was already presented. - **Native ads**: Fixed a bug where a UI API was called on a background thread. - Fixed the `GADBlockSignalSource` memory leak that occurred when loading ads. - **Native Mediation** : Removed `GADMediatedNativeAppInstallAd` and `GADMediatedNativeContentAd`. - **Native Mediation:** Added `duration` and `currentTime` properties into the [GADMediatedUnifiedNativeAd](https://developers.google.com/admob/ios/api/reference/Protocols/GADMediatedUnifiedNativeAd.md.txt) protocol. |
| 7.52.0 | 2019-11-06 | - Fixed a bug where the instream ad's media aspect ratio in the request was not respected. Note that `currentTime` doesn't currently work with native ads. |
| 7.51.0 | 2019-10-17 | - Minimum supported iOS version increased to iOS 9. Apps can still link against iOS 8, but ads will only load on iOS 9+. - Added `currentTime` and `duration` properties to `GADMediaContent`. - Added `mediaContent` property to `GADInstreamAd` and removed `videoController`, `duration`, `currentTime`, and `aspectRatio` properties. - Added the [anchored adaptive banner API](https://developers.google.com/admob/ios/banner/adaptive). Note that `currentTime` doesn't currently work with native ads. |
| 7.50.0 | 2019-09-18 | - Official release for iOS 13 support. - **Open Measurement:** Updated to OM SDK 1.2.19. - Added support for multi-scene apps. Apps supporting multiple scenes must set the `scene` property on `GADRequest` to receive appropriately sized ads. - Removed `SKStoreProductViewController` subclass, which is disallowed on iOS 13. - Resolved Apple warning during app store submission about deprecated API usage. - Added `testRequestIdentifiers` property to `GADMobileAds.requestConfiguration`. Deprecated the `testDevices` property on `GADRequest`. - Deprecated the `kGADErrorMediationNoFill` error code. All no fill errors now return the `kGADErrorNoFill` error code. - **Rewarded Ads:** The `customRewardString` property can now be set any time before a `GADRewardedAd` is shown. Previously, this property needed to be set prior to loading an ad. - **Mediation:** Improved public error messages when mediation adapters could not be found or do not conform to the correct protocol. |
| 7.49.0 | 2019-08-20 | - Added an ad response identifier API for looking up creatives in the Ad Manager Ad Review Center. |
| 7.48.0 | 2019-08-01 | - **Open Measurement:** Updated to OM SDK 1.2.17. - **Rewarded Ads:** Fixed a bug where apps using the old rewarded video APIs (e.g., `GADRewardBasedVideoAd`) saw impression drops in mediation reports. |
| 7.47.0 | 2019-07-11 | - **Open Measurement:** Updated to OM SDK 1.2.16. - Improved logging messages when apps improperly configure their app ID in their `Info.plist`. - Fixed a rendering bug in interstitial and rewarded video app install ads. |
| 7.46.0 | 2019-06-24 | - Included arm64e architecture in the GoogleMobileAds framework to support testing on device. Xcode 10 is now required to build. - **Native Ads:** Removed the previously deprecated `GADNativeAppInstallAd` and `GADNativeContentAd` APIs. Apps should use [unified native ads](https://developers.google.com/admob/ios/native.md.txt). - **Native Ads:** Fixed a bug where the native ad returns a `nil` media view and aspect ratio of zero even though it has video content. - **Mediation:** Fixed a crash that occurs when mediation adapters fire multiple success/failure callbacks for the same request. |
| 7.45.0 | 2019-06-17 | - **Open Measurement:** Updated to OM SDK 1.2.15. - Fixed a crash that occurs on rare occasions when dismissing video ads. - Updated the `rewardedAdMetadataDidChange` callback to not be called when metadata is `nil`. |
| 7.44.0 | 2019-05-10 | - Official release for App Measurement support. - App measurement initializes and sends data on app start by default. Added an option to [delay app measurement](https://developers.google.com/admob/ios/eu-consent#delay_app_measurement_optional) until Google Mobile Ads SDK is explicitly called. - **Open Measurement:** Updated to OM SDK 1.2.14. - Removed `GADCorrelator` and its associated APIs. This feature was previously non-functional. - The `preferredImageOrientation` property in `GADNativeAdImageAdLoaderOptions` is deprecated. Use `GADNativeAdMediaAdLoaderOptions` instead. |
| 7.43.0 | 2019-04-19 | - Updated the minimum required iOS version to 8.0. - Official release version for [Open Measurement](https://iabtechlab.com/standards/open-measurement-sdk/) support. - **Open Measurement:** Includes OM SDK 1.2.13. - **Open Measurement:** Added support for custom native ad formats. - **Native Ads:** Added `videoController` and `hasVideoContent` properties to `GADMediaContent`. - **Native Ads:** Deprecated `videoController` in `GADUnifiedNativeAd`, and `hasVideoContent` and `aspectRatio` methods in `GADVideoController`. - **Native ads:** Added the `GADNativeAdMediaAdLoaderOptions` class with an `aspectRatio` property, enabling publishers to request a specific aspect ratio for a native ad's media asset. This option takes precedence over the [`preferredImageOrientation`](https://developers.google.com/admob/ios/api/reference/Classes/GADNativeAdImageAdLoaderOptions.md.txt#preferredimageorientation) property in `GADNativeAdImageAdLoaderOptions`. - **Native Ads:** `GADMediaView` now respects the [`contentMode`](https://developer.apple.com/documentation/uikit/uiview/1622619-contentmode?language=objc) property when rendering images. |
| 7.42.2 | 2019-03-29 | - **Rewarded Mediation (New APIs):** Fixed a bug where rewarded mediation adapters automatically get deallocated after the load call. |
| 7.42.1 | 2019-03-25 | - Fixed a rare crash that may occur when video ads are deallocated. |
| 7.42.0 | 2019-03-15 | - Google Mobile Ads SDK now depends on App Measurement. You must include the App Measurement framework and dependencies. Your application ID must be placed into your application's plist using the key `GADApplicationIdentifier`. See the [Quick Start](https://developers.google.com/admob/ios/quick-start.md.txt#update_your_infoplist) guide for more information. - SDK framework size reduced to below GitHub limits. - `tagForChildDirectedTreatment` has been added to `GADMobileAds.sharedInstance.requestConfiguration`. `[GADRequest tagForChildDirectedTreatment]` has been deprecated. - Fixed a bug where `rewardBasedVideoAdMetadataDidChange:` could be called when the metadata did not change. |
| 7.41.0 | 2019-03-04 | - **Rewarded Ads:** Added new [`GADRewardedAd`](https://developers.google.com/admob/ios/api/reference/Classes/GADRewardedAd.md.txt) API (in open Beta), which allows loading of multiple rewarded ads concurrently. - **Rewarded Ads:** Added the `admetadata` property on `GADRewardBasedVideoAd`. Use `rewardbasedvideoadmetadatadidchange:` to listen for ad metadata changes. |
| 7.40.0 | 2019-02-21 | - Performance improvements. |
| 7.39.0 | 2019-02-08 | - Fixed a bug where referencing `GADCustomEventParametersServer` resulted in a build error. - Added the `mainImage` property in `GADMediaContent` class to set the main image asset for native ads when video is not available. |
| 7.38.0 | 2019-01-22 | - Fixed a rendering issue for fluid ads displayed in table views. - Added new `GADMediaContent` class to provide media content information. |
| 7.37.0 | 2018-12-10 | - Improved compatibility with Crashlytics to provide more usable crash reports with updated stack trace symbolication. |
| 7.36.0 | 2018-11-16 | - Fixed an issue where certain mediation adapters could report multiple impressions from the same interstitial or rewarded ad. |
| 7.35.2 | 2018-11-08 | - Miscellaneous bug fixes. |
| 7.35.1 | 2018-10-22 | - Miscellaneous bug fixes. |
| 7.35.0 | 2018-10-17 | - Fixed an issue that prevented rewarded ads from loading after a new rewarded ad is loaded inside the `rewardBasedVideoAdDidClose:` delegate method. - Minimum Xcode version is now 9.2. |
| 7.34.0 | 2018-09-26 | - Requesting a second rewarded ad while another rewarded ad is being presented is no longer allowed. This fixes an issue in which requesting the second rewarded ad would break several third-party mediation adapters. Another ad can be requested after presentation is over in `rewardBasedVideoAdDidClose:`. - **Fixed:** CocoaPod updated to reduce file size below 100 MB, allowing SDK files to be pushed to GitHub repositories. |
| 7.33.1 | 2018-09-13 | - **Native ads:** Fixed an issue where video ads would sometimes not play correctly. - **Native ads:** Fixed an issue where `GADMediaView` was empty for non-video ads. - **DFP banner ads:** Fixed a bug where the resize method was not behaving correctly. |
| 7.33.0 | 2018-09-10 | - Added support for iOS 12. - Bug fixes and performance improvements. |
| 7.32.0 | 2018-08-13 | - **Rewarded ads:** Added the `customRewardString` property to `GADRewardBasedVideoAd`, enabling publishers to pass custom data to server-side verification requests. - **Native ads:** `GADNativeAppInstallAd`, `GADNativeContentAd`, and associated APIs are deprecated in favor of `GADUnifiedNativeAd`. See the [Native Ads Advanced Unified guide](https://developers.google.com/admob/ios/native-unified) for further instructions on using the new APIs. - **Native ads:** Added the "Mute This Ad" feature. - **Native ads:** Fixed a bug where AdChoices view was removed when reusing ad views in collection views. - Added the `requestConfiguration` property to `GADMobileAds`, which can be used to specify `maxAdContentRating` and `tagForUnderAgeOfConsent` parameters for all ad requests. - **Mediation:** Added `maxAdContentRating` and `underAgeOfConsent` properties to `GADMediationAdRequest`. **Note:** A change to the SDK build configuration resulted in a larger framework file size. This change doesn't affect the SDK's impact on your app size compared to previous versions. |
| 7.31.0 | 2018-05-17 | - `GADNativeExpressAdView` has been deprecated and no longer serves ads. The [native express ad format has been discontinued](https://support.google.com/admob/answer/7652609). - Deprecated birthday and gender properties on `GADRequest`. |
| 7.30.0 | 2018-03-26 | - MRAID v3 beta version. - Bug fixes and performance improvements. |
| 7.29.0 | 2018-02-16 | - Fixed a bug introduced in 7.28.0 that caused graphical glitches in GameKit apps. |
| 7.28.0 | 2018-01-31 | - Native ads: Added Unified Native Ad API. This combines `GADNativeAppInstallAds` and `GADNativeContentAds` into one new type: `GADUnifiedNativeAd`. For more details, see the [Unified Native Ads guide](https://developers.google.com/admob/ios/native-unified). - Rewarded video: Added the `rewardBasedVideoAdDidCompletePlaying:` method to `GADRewardBasedVideoAdDelegate` to notify publishers when a video completes. - Rewarded video mediation: Added the `connectorDidCompletePlayingRewardBasedVideoAd:` method to `GADMRewardBasedVideoAdConnectorDelegate` for mediation adapters to invoke when a video completes. - Native mediation: Updated `GADMediatedNativeAdDelegate.h` to give adapters access to the individual views used in a native ad. Added: ``` -mediatedNativeAd:didRenderInView:clickableAssetViews:nonclickableAssetViews:viewController: ``` Deprecated: ``` -mediatedNativeAd:didRenderInView:viewController: ``` |
| 7.27.0 | 2017-12-13 | - Added support for native video mediation. Native mediation adapters must implement the `mediaView` method on `GADMediatedNativeAppInstallAd` and `GADMediatedNativeContentAd` and return their media view. - Added dependencies on the `QuartzCore` and `CFNetwork` frameworks. |
| 7.26.0 | 2017-11-17 | - iPhone X support. - For full screen ads, the default close button now renders within the safe area. - Removed the `nativeAd` property from [`GADAdChoicesView`](https://developers.google.com/admob/ios/api/reference/Classes.md.txt#/c:objc(cs)GADAdChoicesView) and [`GADMediaView`](https://developers.google.com/admob/ios/api/reference/Classes.md.txt#/c:objc(cs)GADMediaView). - Limits SDK interactions with Apple's StoreServices to once per session, at app launch. - Test ads now show a label on top of the ad. See the [testing guide](https://developers.google.com/admob/ios/test-ads.md.txt) for more details. |
| 7.25.0 | 2017-10-25 | - Native Mediation: Adapters now get the call to `mediatedNativeAd:didRenderInView:viewController:` as soon as a native ad is associated with a native ad view, instead of waiting for that native ad view to be visible. - Native Mediation: Adapters now get a call to `mediatedNativeAdDidUntrackView:` with a nil view when the tracked view gets deallocated. |
| 7.24.1 | 2017-9-27 | - Updates the way the SDK interacts with Apple's StoreServices. |
| 7.24.0 | 2017-9-20 | - Official release for iOS 11 support. - `GADAdDelegate` has been removed. `GADAudioVideoManager` should be used instead to manage ads audio. - Fixed an iOS 11 bug where banner views were shifted down due to content insets. - Added a dependency on the `Security` framework. |
| 7.23.0 | 2017-09-05 | - Mediation adapters now get notified via `mediatedNativeAd:didUntrackView:` when a native ad is deallocated. |
| 7.22.0 | 2017-08-08 | - Fixed issue where an "ad failed to load" event was not being invoked when an ad request is dropped, due to the app running in a background state. |
| 7.21.0 | 2017-06-20 | - For interstitial ad units that are opted-out of video ads, the interstitial ads served will have an immediate close option, even if an [MRAID](https://www.iab.net/media/file/IAB_MRAID_v2_FINAL.pdf) creative calls `useCustomClose`. - Added text to the debug menu to indicate if creative preview or troubleshooting mode is active. - Added the `GADMultipleAdsAdLoaderOptions` class, which allows publishers to specify the number of ads to load for a single request. - Added the `loading` property to `GADAdLoader`, which indicates whether the ad loader is currently loading ads. - Added a new, optional delegate method `-adLoaderDidFinishLoading:` to `GADAdLoaderDelegate`, which is invoked after a `GADAdLoader` finishes returning all of the ads for a request. |
| 7.20.0 | 2017-05-03 | - Removed in-app purchase ad format. - Removed armv7s architecture. |
| 7.19.1 | 2017-04-13 | - Fixed issue where incorrect ad size was being forwarded to mediation networks for smart banner mediation. |
| 7.19.0 | 2017-03-16 | - Added the `openInlineBrowser()` method to `google_mobile_app_ads.js` for opening a URL in a `SFSafariViewController`. - Added `GADAudioVideoManagerDelegate` to provide notifications for the start and pause/stop of audio and video ad playback. |
| 7.18.0 | 2017-02-23 | - Added `play`, `pause`, and `setMute` methods to `GADVideoController`. - Added new delegate methods to `GADVideoControllerDelegate` corresponding to the start, pause, end, mute and unmute of video content. - Added support for rewarded video mediation adapters to opt in to early initialization before an ad request is made. |
| 7.17.0 | 2017-01-31 | - Added `nativeAdDidRecordImpression` and `nativeAdDidRecordClick` to `GADNativeAdDelegate`. |
| 7.16.0 | 2016-12-12 | - Added a video controller to `DFPBannerView` object. - `GADNativeExpressAdView`, `GADNativeContentAd`, `GADNativeCustomTemplateAd`, `GADNativeContentAd`, and `GADNativeCustomTemplateAd` video controller properties are now non-null. - Native Mediation: Adapters can now set the `adChoicesView` property on `GADMediatedNativeAppInstallAd` and `GADMediatedNativeContentAd` to render AdChoices. |
| 7.15.0 | 2016-11-21 | - Added a `GADMediaView` property to `GADNativeContentAd` and `GADNativeCustomTemplateAd`. |
| 7.14.0 | 2016-10-28 | - Moved mediation adapter headers into framework and global header. - For the `kGADAdSizeFluid` ad size, changing the banner's size no longer changes the banner view's frame size. |
| 7.13.1 | 2016-10-20 | - Added support for in-app preview and troubleshooting in Google Ad Manager. |
| 7.13.0 | 2016-10-17 | - Added dependency on the `JavaScriptCore` framework. - Miscellaneous bug fixes. |
| 7.12.1 | 2016-10-05 | - Corrected nullability annotations for `GADNativeAppInstallAd` and `GADNativeContentAd`. |
| 7.12.0 | 2016-09-28 | - Bug fixes for crashes involving `GADStringFromCGFloat`. - Added `GADNativeAdViewAdOptions` to specify the location of AdChoices in native ads. - Added the `adNetworkClassName` property to `GADRewardBasedVideoAd`. |
| 7.11.0 | 2016-09-15 | - Removed dependencies on CoreBlueooth, EventKit, and EventKitUI frameworks. - Apps no longer need to provide text for `NSCalendarsUsageDescription` and `NSBluetoothPeripheralUsageDescription` when updating apps for iOS 10. - Removed MRAID 2.0 `createCalendarEvent` and `storePicture` support. |
| 7.10.1 | 2016-08-26 | - Bug fix for crashes involving `GADStringFromCGFloat`. |
| 7.10.0 | 2016-08-16 | - When associating native ads with a view, the view's `userInteractionEnabled` property is changed to `NO` to match the SDK's expectations. - Added dependency on `MobileCoreServices`. - Added an API to tell the ad network if the SDK version is at least <var class="readonly" translate="no">major.minor.patch</var>. |
| 7.9.1 | 2016-07-18 | - Fixed bug affecting rewarded video mediation. |
| 7.9.0 | 2016-07-13 | - Added GLKit, OpenGLES, CoreMotion and CoreVideo framework dependencies to improve and enhance ad rendering and quality. - Added the `+[GADMobileAds configureWithApplicationID:]` method. AdMob publishers should call this method with their application ID. - Google Ad Manager publishers who use SDK mediation will no longer get the warning "mediated ad type is unknown or invalid". |
| 7.8.1 | 2016-05-11 | - Added SDK support for automatically using location data when a user has explicitly enabled an app's location permissions. |
| 7.8.0 | 2016-04-28 | - Added dependency on CoreBluetooth and SafariServices frameworks. - Added nullability annotations to the SDK's main header files for improved Swift optionals support. - Added support for `GADAdSizeDelegate` in ads with size `kGADAdSizeFluid`. |
| 7.7.1 | 2016-04-06 | - Resolved issue with Native Ad click handling in scroll views. |
| 7.7.0 | 2016-02-24 | - Added support for rewarded video ads. - Added support for bitcode. While this has increased the size of the SDK download, it will not significantly increase the size of app binaries. To change this setting for your app, go to your project's **Build Settings** and under the **Build Options** section, set **Enable Bitcode** to `Yes`. - Added a dependency on the MediaPlayer framework. You will need to link this framework to your app's binary. If you are using CocoaPods, run `pod install --repo-update`. - Removed all references to **userID** in reward-based video APIs. - Calls to the `loadRequest:` method for `GADInterstitial` are always paired with an asynchronous `didFailToReceiveAd:withError:` or `interstitialDidReceiveAd:` delegate call. Fixed a corner case where this contract was not upheld. - Native Mediation: Added the ability for adapters to handle and report click events. - Search ads: Added support for dynamic height. |
| 7.6.0 | 2015-12-07 | - Protocol methods for mediation adapters have been regrouped/moved to make them simpler. - Corrected the capitalization of the `didFailToLoadWithError` message in the `GADRewardBasedVideoAdDelegate` protocol. |
| 7.5.2 | 2015-10-16 | - Bug fixes. |
| 7.5.1 | 2015-09-30 | - Fixes crashes in `GADStatisticsCore`. |
| 7.5.0 | 2015-09-22 | - SDK no longer uses `UIApplication`'s [`canOpenURL`](https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIApplication_Class/#//apple_ref/occ/instm/UIApplication/canOpenURL:) method on iOS 9 devices. - Fixes issue where [`GADNativeAdDelegate`](https://developers.google.com/admob/ios/api/reference/Protocols/GADNativeAdDelegate.md.txt) methods were not called. - `GADAdLoaderDelegate`'s `adLoader:didFailToReceiveAdWithError` callback is now called if no ad types are requested. |
| 7.4.1 | 2015-08-13 | - Fixes a crash that occurs when the user completes an in-app purchase for a product whose identifier contains a special character. |
| 7.4.0 | 2015-07-30 | - MRAID v2 beta version. - Added new global settings for crash reporting and automatic in-app purchase (IAP) tracking. If automatic in-app purchase tracking is enabled, this removes the dependency on the [Conversion Tracking SDK](https://developers.google.com/app-conversion-tracking/ios/) for reporting IAP conversions. - The `adUnitID` property on `GADInterstitial` is now `readonly`. - Added APIs for reward-based video mediation. - Deprecated `setLocationWithDescription:` on `GADRequest`. Use `setLocationWithLatitude:longitude:accuracy:` instead. |
| 7.3.1 | 2015-05-28 | - Added support for app install and content native ad formats across AdMob, Ad Manager, and Ad Exchange. - Added support for custom native ad formats, available for Ad Manager reservations. - Fixed a regression introduced in 7.2.0 where smart banners displayed incorrectly in landscape on iOS 8. |
| 7.2.2 | 2015-05-07 | - Fixes the following warning when uploading to the App Store: The app references non-public selectors in Payload/(\<app_id\>):clientId,screenName,setScreenName. |
| 7.2.1 | 2015-04-30 | - Simulators once again load live ads by default. Add `kGADSimulatorID` to the `testDevices` property on `GADRequest` to get test ads on simulators. - Added ability for mediation adapters and custom events to record clicks for interstitials. - Added minor improvements to custom event APIs. - Added `GADInterstitial initWithAdUnitID:` and deprecated `GADInterstitial init`. - Deprecated the `setValidAdSizesWithSizes` method in `DFPBannerView`. Use `DFPBannerView.validAdSizes` instead. |
| 7.1.0 | 2015-04-01 | - Requires linking against `CoreMedia.framework`. - Miscellaneous bug fixes. |
| 7.0.0 | 2015-02-03 | - Dropped support for iOS 5. - Released SDK as a framework. - Removed dependency on the `-ObjC` linker flag. - Improved ad loading time on iOS 8. - Added `requestAgent` property to `GADRequest`. Third-party integrations should set this property to denote the platform from which the request originated. - Added new `DFPRequest` class, which supports custom targeting and category exclusions. - Moved `publisherProvidedID` property from `DFPExtras` to `DFPRequest`. - Replaced `GADAdMobExtras` and `DFPExtras` with a single `GADExtras` class. - Deprecated `GADBannerView`'s `hasAutoRefreshed` property. - Removed the `GAD_SIMULATOR_ID` macro---test ads are automatically enabled in the simulator when using `GADBannerView` and `GADInterstitial`. - Removed `GADRequest`'s `mediationExtras`, `additionalParameters`, and testing properties. - Deprecated `GADRequest`'s `setBirthdayWithMonth:day:year:`. - Removed `GADRequest`'s `addKeyword:` method. - Removed `DFPSwipeableBannerView` class. |
| 6.12.2 | 2014-11-06 | - Turned off bouncing for banner ads. - Fixed crash occurring in `DumpViews`. |
| 6.12.0 | 2014-09-18 | - Official release for iOS 8 support. - Ad loading takes less time on the main thread on iOS 8. - Smart Banner ads are correctly displayed in landscape on iOS 8. - Requires linking against two new frameworks: `EventKit` and `EventKitUI`. These are auto-linked if modules and auto-linking frameworks are enabled. - Deprecated `mediatedAdView` property on `GADBannerView`. - Removed the previously deprecated `loadAndDisplayRequest:usingWindow:initialImage:` method on `GADInterstitial`. |
| 6.11.1 | 2014-08-07 | Corrected banner view initialization from nibs. |
| 6.10.0 | 2014-07-17 | - Ads now default to opening in Safari instead of the in-app browser. The creative can override this behavior by specifying [`mraid.expand()`](https://media.admob.com/mraid/v1/docs/) or [`admob.opener.openOverlay()`](https://media.admob.com/api/v1/docs/). - Swipe gestures have been disabled on `DFPBannerView`. - `DFPSwipeableBannerView` has been deprecated in favor of `DFPBannerView`. |
| 6.9.3 | 2014-06-12 | - The `loadAndDisplayRequest:usingWindow:initialImage` method on `GADInterstitial` has been deprecated. - Unbundled analytics packages from SDK resulting in (9.6 -\> 3.4)MB SDK size reduction. The analytics SDK can be downloaded [here](https://developers.google.com/analytics/devguides/collection/mobile). - The `contentURL` property on `DFPExtras` has been moved to `GADRequest`. - Various bug fixes. |
| 6.9.2 | 2014-05-07 | - Dropped support for iOS 4.3. The SDK supports iOS 5.0 and higher and now provides ARC weak references. - Added a 320x100 large banner format, with constant `kGADAdSizeLargeBanner`. - Added a new interstitial format to launch in-app purchases. Set the `inAppPurchaseDelegate` property on `GADInterstitial` to handle in-app purchase events. |
| 6.8.0 | 2014-01-24 | - Improved ad targeting. - Required to link against the `CoreTelephony` framework. - Fixed a crash that occurs when the device enters airplane mode. |
| 6.7.0 | 2013-12-12 | - Improved performance of ads when placed inside a `UITableView`. - Miscellaneous bug fixes. |
| 6.6.1 | 2013-11-13 | Fixed some memory leaks when using mediation. |
| 6.6.0 | 2013-11-05 | - Required to link against the `AVFoundation` framework. - Added support for arm64 and x86_64 architectures. - Significantly reduced library size. - Added `adNetworkClassName` property on `GADBannerView` and `GADInterstitial`. - Fixed bug where Ad Manager app events were not firing for interstitials. - Bundled the Ad Exchange HTML adapter directly into the library. Ad Exchange developers no longer need to link `libAdapterHtml.a` separately. |
| 6.5.1 | 2013-08-29 | Hides the status bar for full-screen views on iOS 7. |
| 6.5.0 | 2013-07-16 | - Fixed `GADBannerView` resizing bug. - API change for COPPA field in `GADRequest`. - Passes Apple's IDFA in the ad request. - Updated mediation warning messages for linker flag usage. |
| 6.4.2 | 2013-05-20 | Fix for recurring `GADMRAIDInterceptor` issue. |
| 6.4.1 | 2013-04-18 | Fixed a crash that occurred when the `Advertising Identifier` is `nil`. |
| 6.4.0 | 2013-04-08 | - Fixed `GADInterstitial` crashing when app is running in the background. - Fixed a `GADMRAIDInterceptor` threading crash. - Fixed a bug so that interstitial delegates now receive `interstitialWillLeaveApplication`. - Renamed MD5 symbols to prevent duplicate symbol errors. - Added support for receiving test ads when using AdMob through mediation. - Test ads are only available on devices running iOS 6+. - Removed all uses of UDID. |
| 6.3.0 | 2013-02-14 | - Added a logging statement that provides the ID to pass to `request.testDevices` to enable test ads on a specific device. - Added support for test ads on iOS 6. - Fixed a crash in `GADMraidInterceptor`. |
| 6.2.1 | 2012-10-16 | - Required to link against the `StoreKit` framework. - Fixed a crash for when app is rotated before first mediation ad is received. |
| 6.2.0 | 2012-09-26 | - The `-all_load` flag is no longer necessary when building for ARMv7s; the `-ObjC` flag is still required. - Required to link against the AdSupport framework. - Required to use Xcode 4.5 and build against iOS 6. The minimum deployment is iOS 4.3. - The SDK has removed ARMv6 instructions, and now includes ARMv7s instructions. - Uses Apple's Identifier For Advertising (IDFA) for iOS 6 and UDID for versions below iOS 6. - Various bug fixes for iOS 6. - Compatibility of in-app browser for the taller screen of iPhone 5. - Compatibility with autolayout for iOS 6. |
| 6.1.4/5 | 2012-08-09 | - Bug fix for third-party click/impression tracking. - `DFPBannerView` can be created without having an initial size. Make sure `validAdSizes` is set before loading a loading a request. **6.1.5:** This version utilizes the universal device identifier (UDID). Apps utilizing this version must obtain appropriate user consent for sending device identifier information in compliance with relevant iOS policies. |
| 6.1.1/2 | 2012-07-19 | - Fixed MRaid Interceptor crashing when accessing nil key issue. - Publishers will need to add an `-all_load` flag when using the SDK. - Added `DFPBannerView`, `DFPInterstitial`, and `DFPExtras` objects specifically for Ad Manager publishers. - New Ad Manager feature: Multiple ad sizes. - New Ad Manager feature: App Events. - Ad Manager, Search, and Mediation headers are now included in the "Add-ons" subfolder, thus no longer requiring separate downloads. - Known issue: When using `GADBannerView` with Interface Builder, the frame size needs to be set explicitly before loading a request. **6.1.2:** This version utilizes the universal device identifier (UDID). Apps utilizing this version must obtain appropriate user consent for sending device identifier information in compliance with relevant iOS policies. |
| 6.0.3/4 | 2012-05-10 | - Added frequency capping. - Fixed some minor bugs. **6.0.4:** This version utilizes the universal device identifier (UDID). Apps utilizing this version must obtain appropriate user consent for sending device identifier information in compliance with relevant iOS policies. |
| 6.0.1 | 2012-04-19 | - Added ad network mediation. - Mediation includes ability to mediate house ads and custom events. - Added MRAID v1.0 support for all versions of the iOS platform. - Deprecated `GAD_SIZE_#x#` macros in favor of `GADAdSize` constants. - Added support for full-width ads through the new `GADSize` constants: `kGADAdSizeSmartBannerPortrait` and `kGADAdSizeSmartBannerLandscape`. - `GADRequest` now uses `registerAdNetworkExtras:` to set extras. The `additionalParameters` property has been deprecated. As of version 5.0.8, the iOS SDK does not reference `uniqueIdentifier`. |
| 5.0.8 | 2012-03-30 | - Removed any references made to `uniqueIdentifier`, a deprecated `UIDevice` property. - The `testDevices` property has been deprecated in favor of the now un-deprecated `testing` property. |
| 5.0.5 | 2011-11-30 | - Added support for additional Rich Media interstitial ad formats for iPhone and iPad. This update will be forward-compatible with all future interstitial ad formats. - Improved interstitial impression tracking. - `GADInterstitial` has always been a one-time-use object, but it will now gracefully fail by calling `didFailToReceiveAdWithError:` on any requests to load or display an interstitial after the first request. |
| 5.0.4 | 2011-10-28 | Fix oversized buttons on retina displays in in-app browser. |
| 5.0.3 | 2011-10-24 | - [Custom search ads](https://developers.google.com/custom-search-ads) integration. - iOS 5.0 support. - Faster interstitial loads. - Modal view controller ad presentation fix. - Fixed anchor tag behavior. |
| 4.1.1 | 2011-07-18 | - Additionally certified on iOS 5.0 Beta 3. - `GTMStringEncoding` has been namespaced to avoid linker collisions with other libraries. - In-app browser closes itself for misconfigured App Store ads. - Fixed memory leaks in the SDK. - Fixed click tracking problems with DoubleClick for Advertisers (DFA) banners. - Fixed a couple of very rare crashes. - Google Ad Manager official release version. |
| 4.1.0 | 2011-05-02 | - All view controllers are properly dismissed when a close is issued from JavaScript on a view controller obscured in the stack of view controllers. - Added support for server-provided AFMA interstitial timeouts. - Test mode is now a enabled by white listing device IDs. - Added a method for re-using the same UIWebView in a banner and Rich Media Overlay. - Added device submodel to the onshow dictionary. - Fixed memory leaks in `GADBrowserController` and `UIWebViews`. - App-open interstitial view controller locks itself into portrait to remove a warning log from the console. - Any 5xx HTTP response codes now return a "server error" instead of a "network error". |
| 4.0.2 | 2011-03-15 | General Availability release. |