Search code examples
iosadmobinterstitial

Receiving production ads and interstitials from AdMob in test mode


I'm testing AdMob ads in my iOS-application. AdMob seems to ignore the test-flag I put in the code:

-(IBAction)quitButtonHit:(id)sender{
    [[AudioPlayer sharedManager] stopSound];
    [self.timer invalidate];
    interstitial_ = [[GADInterstitial alloc] init];
    interstitial_.adUnitID = adMobUnitID;
    interstitial_.delegate = self;
    GADRequest *request = [GADRequest request];
    request.testing = YES;
    [interstitial_ loadRequest:[GADRequest request]];
}

-(void) interstitial:(GADInterstitial *)ad didFailToReceiveAdWithError:(GADRequestError *)error {
   [self dismissViewControllerAnimated:YES completion:nil];
}

-(void) interstitialDidDismissScreen:(GADInterstitial *)ad {
    [self dismissViewControllerAnimated:YES completion:nil];
}

-(void) interstitialDidReceiveAd:(GADInterstitial *)ad {
    [ad presentFromRootViewController:self];
}

I am receiving production interstitials when I hit the Quit-button in my app. I do not understand why since Google states that they will invite you to be able to receive interstitials and because I set the test-flag on the request.

I am also receiving production ads in my app's AdMob banner. But that only goes for my device - on the simulators test ads are displayed. I also set the test-flag when requesting banners.

I would like the production ads to go away, so I won't have to worry about tapping them by accident.

I use AdMob's lates API (version 6.3.0). My deployment target is iOS 6.0.

Can anyone explain this and maybe suggest a solution to make the production ads go away?

Thanks!


Solution

  • Try this :

    request.testDevices =
          [NSArray arrayWithObjects:
              // TODO: Add your device/simulator test identifiers here. They are
              // printed to the console when the app is launched.
              nil];