iAD работает только на некоторых устройствах - PullRequest
1 голос
/ 14 марта 2012

iAd работает нормально на iPhone 3GS с iOS 5.0.1 и iPhone 4 с iOS 4.3.1, но не работает на iPad 2 с iOS 5.0.1.

Я получаю следующую ошибку.

Ошибка домена = код ADErrorDomain = 3 "Операция не может быть завершена. Рекламный инвентарь недоступен" UserInfo = 0x118ca00 {ADInternalErrorCode = 3, NSLocalizedFailureReason = Рекламный инвентарь недоступен}

Ниже приведеноКод: -

- (void)createAdView {
    Class cls = NSClassFromString(@"ADBannerView");
    if (cls) {
        adView = [[cls alloc] initWithFrame:CGRectZero];

    adView.requiredContentSizeIdentifiers = [NSSet setWithObjects:ADBannerContentSizeIdentifier320x50,
                                             ADBannerContentSizeIdentifier480x32, nil];

    // Set the current size based on device orientation
    adView.currentContentSizeIdentifier = ADBannerContentSizeIdentifierPortrait;
    adView.delegate = self;

    adView.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleRightMargin;

    // Set intital frame to be offscreen
    CGRect adFrame = adView.frame;
    adFrame.origin.y = -44;
    adView.frame = adFrame;
    [UIView beginAnimations:@"showBanner" context:NULL];
    [self.view addSubview:adView];
    [UIView commitAnimations];
}
}

   //Hides iAd Banner
 - (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error  {
if (bannerIsVisible){
    [UIView beginAnimations:@"animateAdBannerOff" context:NULL];
    adView.frame = CGRectOffset(adView.frame, 0, -44);  // Move above screen
    [UIView commitAnimations];
    bannerIsVisible = NO;
}
}

   //Shows iAd Banner.
  - (void)bannerViewDidLoadAd:(ADBannerView *)banner {
if (!bannerIsVisible)   {
    [UIView beginAnimations:@"animateAdBannerOn" context:NULL];
    adView.frame = CGRectOffset(adView.frame, 0, +44);  // Show on top of screen
    [UIView commitAnimations];
    bannerIsVisible = YES;
}   
  }


Любая помощь будет оценена.

1 Ответ

0 голосов
/ 14 марта 2012

Ответ содержится в сообщении об ошибке: Рекламный инвентарь недоступен.

Это не проблема в вашем коде, это то, что у Apple недостаточно рекламы для показа.Их уровень заполнения довольно низок, поэтому вам нужно учитывать ситуацию, когда нет рекламы.Многие люди используют такие службы, как AdWhirl, чтобы переключиться на другие рекламные сети или даже показывать «домашнюю» рекламу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...