我正在视图控制器的底部加载横幅广告,他们会加载连接到iAd网络的添加消息
但在xcode屏幕底部收到错误消息
2014-07-20 11:21:38.515 WeddingsAndMore[30983:60b] Reachability Flag Status: -R ------- networkStatusForFlags
2014-07-20 11:21:38.768 WeddingsAndMore[30983:60b] Error receive ad: Error Domain=ADErrorDomain Code=7 "The operation couldn’t be completed. Ad was unloaded from this banner" UserInfo=0x10db25db0 {ADInternalErrorCode=7, NSLocalizedFailureReason=Ad was unloaded from this banner, ADInternalErrorDomain=ADErrorDomain}
2014-07-20 11:21:38.971 WeddingsAndMore[30983:60b] [AppDeveloper] ADBannerView: Unhandled error (no delegate or delegate does not implement didFailToReceiveAdWithError:): Error Domain=ADErrorDomain Code=3 "The operation couldn’t be completed. Ad inventory unavailable" UserInfo=0x10d87e570 {ADInternalErrorCode=3, NSLocalizedFailureReason=Ad inventory unavailable, ADInternalErrorDomain=ADErrorDomain}
2014-07-20 11:21:39.972 WeddingsAndMore[30983:60b] [AppDeveloper] ADBannerView: Unhandled error (no delegate or delegate does not implement didFailToReceiveAdWithError:): Error Domain=ADErrorDomain Code=5 "The operation couldn’t be completed. Banner view is visible but does not have content" UserInfo=0x10d9272b0 {ADInternalErrorCode=5, NSLocalizedFailureReason=Banner view is visible but does not have content, ADInternalErrorDomain=ADErrorDomain}
并且我在模拟器中打开的时间越长,我得到的就越多
代码如下
.h文件
#import <UIKit/UIKit.h>
#import <iAd/iAd.h>
@interface DMKPickViewController : UIViewController <ADBannerViewDelegate>
@property (strong, nonatomic) IBOutlet ADBannerView *bannerView;
@end
.m文件
#import "DMKPickViewController.h"
#import "DMKAppDelegate.h"
@interface DMKPickViewController ()
@end
@implementation DMKPickViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
_bannerView = [[ADBannerView alloc] initWithFrame:CGRectZero];
_bannerView.delegate = self;
_bannerView.hidden = NO;
[self.view addSubview:_bannerView];
[super viewDidLoad];
// Do any additional setup after loading the view.
}
- (void)bannerViewDidLoadAd:(ADBannerView *)banner
{
NSLog(@"bannerViewDidLoadAd");
CGRect bannerFrame = CGRectMake(0.0, (self.view.frame.size.height - 50), 0.0, 0.0);
[self.bannerView setFrame:bannerFrame];
self.bannerView.hidden = NO;
}
-(void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error
{
NSLog(@"Error receive ad: %@", error);
self.bannerView.hidden = YES;
}
- (BOOL)bannerViewActionShouldBegin:(ADBannerView *)banner
willLeaveApplication:(BOOL)willLeave
{
return YES;
}
- (void)bannerViewActionDidFinish:(ADBannerView *)banner
{
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (void)viewDidAppear:(BOOL)animated
{
}
这是我第一次实施iAd所以我对此新手
答案 0 :(得分:0)
如果您要转到无法看到广告的屏幕,建议您停用该广告。那么你就没有任何可能无法接收它。从superview中删除它,将委托设置为nil,然后释放它。当它再次可见时再次创建它。