This guide is intended for publishers who are interested in using Google Mobile Ads mediation with Flurry. It walks through the setup of a mediation adapter to work with your current iOS app and the configuration of additional settings.
Flurry Resources |
---|
Documentation |
SDK |
Adapter |
Customer support |
Prerequisites
An iOS app with the Google Mobile Ads SDK integrated (If you don't have one, see Get Started.)
An AdMob account and an ad unit configured with mediation line items.
Helpful primers
The following Help Center articles provide background information on mediation:
Add Flurry to your project
Integrate ads into your app the same as before. To integrate non-interstitial ads (banner size, leaderboard size, and so on), see Banner Ads. To integrate interstitial ads (full-screen ads that mask all other content), see Interstitial Ads.
The following steps change your ad placement into a mediation placement that can show ads from multiple networks.
Download the adapter and SDK for Flurry from the resources above.
Add the downloaded network adapter/SDK in Xcode: right-click on your project and click Add Files to project.
Include any frameworks, compiler flags, or linker flags that Flurry require. There's no need to write additional code. Mediation invokes the Flurry adapter and SDK as necessary to create ads.
Set up event notification
To be notified of ad lifecycle events like impressions, you can implement
a GADBannerViewDelegate
. When using mediation, this delegate is
automatically notified of events from Flurry. For example, impressions
from any ad network are reported through the adViewDidReceiveAd:
method of
GADBannerViewDelegate
.
Check the value of adNetworkClassName
You can optionally check the adNetworkClassName
property on
GADBannerView
, which returns the ad network class
name of the ad network that fetched the current banner once the
adViewDidReceiveAd
callback is called:
Swift
func adViewDidReceiveAd(_ bannerView: GADBannerView) {
print("Banner adapter class name: \(bannerView.adNetworkClassName)")
}
Objective-C
- (void)adViewDidReceiveAd:(GADBannerView *)bannerView {
NSLog(@"Banner adapter class name: %@", bannerView.adNetworkClassName);
}
Similarly, for interstitials, check the adNetworkClassName
property
on GADInterstitial
inside interstitialDidReceiveAd
:
Swift
func interstitialDidReceiveAd(_ ad: GADInterstitial) {
print("Interstitial adapter class name: \(ad.adNetworkClassName)")
}
Objective-C
- (void)interstitialDidReceiveAd:(GADInterstitial *)interstitial {
NSLog(@"Interstitial adapter class name: %@", interstitial.adNetworkClassName);
}
adNetworkClassName
returns
GADMAdapterGoogleAdMobAds
.
For ads fetched via
custom events, it returns
GADMAdapterCustomEvents
.