Otrzymuję komunikat didFailToReceiveAdWithError
w konsoli podczas działania na symulatorze i urządzeniu.Banner iAd nie działa na iOS 9
Banery iAd są wyświetlane z powodzeniem podczas pracy w systemie iOS 8. Po uruchomieniu na iOS 9 banery iAd nie otrzymują reklamy.
.h
#import <iAd/iAd.h>
@interface ViewController : UIViewController <ADBannerViewDelegate>
@property (retain, nonatomic) IBOutlet ADBannerView *adBanner;
.m
-(void)viewDidLoad {
self.adBanner = [[ADBannerView alloc]initWithFrame:CGRectMake(0,[UIScreen mainScreen].bounds.size.height-100, [UIScreen mainScreen].bounds.size.width, 50)];
self.adBanner.delegate=self;
[self.adBanner setBackgroundColor:[UIColor clearColor]];
[self.view addSubview:self.adBanner];
}
-(void)bannerViewWillLoadAd:(ADBannerView *)banner {
NSLog(@"bannerViewWillLoadAd");
}
-(void)bannerViewDidLoadAd:(ADBannerView *)banner {
// Show the ad banner.
NSLog(@"bannerViewDidLoadAd");
[UIView animateWithDuration:0.5 animations:^{
self.adBanner.alpha = 1.0;
}];
}
-(void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error {
NSLog(@"didFailToReceiveAdWithError");
// Hide the ad banner.
[UIView animateWithDuration:0.5 animations:^{
self.adBanner.alpha = 0.0;
}];
}
-(void)bannerViewActionDidFinish:(ADBannerView *)banner {
NSLog(@"Ad did finish");
}
Kiedy działa na iOS 9, druków konsoli didFailToReceiveAdWithError
za każdym razem.
Skopiowałem twój kod do nowego projektu xcode 7 z iOS 9.1 Działa. –
Na podstawie Twojego kodu, myślę, że IBOutlet jest konieczny, tylko deklaracja zmiennej w interfejsie. Nie jest konieczne rysowanie banera w Konstruktorze interfejsów. Ustawienie koloru tła reklamy jest niedozwolone. (Po prostu podążałem za annałem Daniela Storma, działa świetnie dla mnie.) – Vincent