2013-08-27 2 views
1

Когда я запускаю приложение в симуляторе, все, что я получаю, это белое окно в нижней части экрана, где я размещал баннер, но затем он исчезает через 3 секунды ...AdBanner не отображается в симуляторе

Это код, который я имею в моем .h файл для IAD:

#import <UIKit/UIKit.h> 
#import <Foundation/Foundation.h> 
#import "CardScrollView.h" 
#import <iAd/iAd.h> 

@interface ViewController1 : UIViewController <CardScrollViewDelegate, 
ADBannerViewDelegate> { 

} 

@property (weak, nonatomic) IBOutlet ADBannerView *banner1; 

@end 

Это код, который я имею в моем файле .m для IAD:

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    self.banner1.delegate = self; 
} 

- (BOOL)bannerViewActionShouldBegin:(ADBannerView *)banner 
    willLeaveApplication:(BOOL)willLeave 
{ 
    return YES; 
} 

- (void)bannerViewDidLoadAd:(ADBannerView *)banner { 
    [UIView beginAnimations:nil context:NULL]; 
    [UIView setAnimationDuration:1]; 
    [banner setAlpha:1]; 
    [UIView commitAnimations]; 
} 

- (void)bannerView:(ADBannerView *)banner 
    didFailToReceiveAdWithError:(NSError *)error { 
    [UIView beginAnimations:nil context:NULL]; 
    [UIView setAnimationDuration:1]; 
    [banner setAlpha:0]; 
    [UIView commitAnimations]; 
} 


@end 

Примечание: у меня есть два делегата в .h, как показано выше, потому что у меня также есть UIScrollView на том же контроллере. У меня нет никаких ошибок или предупреждений, так почему это не появляется? Этот код работает в моих других приложениях.

+0

Я тоже встретил эту проблему. Кажется, это влияет только на симулятор, но хорошо работает на реальном телефоне. – Shuduo

+0

Вы должны поместить журнал в 'bannerView: didFailToReceiveAdWithError:' 'NSLog (@"% @ ", ошибка);' – ppaulojr

+0

@ppaulojr, как я могу разместить этот журнал? и «shuduo» им еще попробовать это на телефоне, но когда я это сделаю, я обновлю все, будет ли он работать, хотя это странно, потому что этот код iad работает в моих других приложениях. – user2721311

ответ

1

Была такая же проблема.

В какой-то момент iAd перестает работать в симуляторе, но работает на реальных iPhone. И это происходит без изменения какой-либо строки кода (логики iAd).

То, что я сделал, чтобы получить его обратно на работу:

  1. Перейти к приложению «Настройки» в Simulator (это означает, запустить приложение, нажмите на кнопку Home (или Ctrl + Shift + H) перейдите к первой панели и найти настройки)
  2. Перейти к меню разработчика
  3. Набор ОВР для скорости

100% заполнения Но это не было достаточно для меня. Тогда я нашел странное исправление:

Допустим, вы работаете тренажер для iPhone Retina 4 дюйма, просто выберите другой симулятор iPhone, как iPhone 3,5-дюймовый или iPhone 4 дюйм 64 битного ,

Как-то это заставляет iAd появляться снова!

+1

Настройки разработчика и скорость заполнения iAD были для меня новостью! Спасибо за тонну за этот – erparker

Смежные вопросы