1

当我在模拟器中运行应用程序时,我得到的只是屏幕底部的一个白色窗口,这是我放置横幅的位置,但 3 秒后它消失了......

这是我在.hiad 文件中的代码:

#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在同一个视图控制器上也有一个。我没有任何错误或警告,为什么它没有出现?此代码适用于我的其他应用程序。

4

1 回答 1

1

有同样的问题。

在某些时候,iAd 会停止在模拟器中运行,但可以在真实的 iPhone 上运行。这发生在不更改任何代码行(iAd 逻辑)的情况下。

我做了什么让它恢复工作:

  1. 转到模拟器的应用程序“设置”(也就是说,运行您的应用程序,单击主页按钮(或 CMD+Shift+H),转到第一个面板并找到设置)
  2. 转到开发人员菜单
  3. 将 iAd 设置为 100% 填充率

但这对我来说还不够。然后我发现了一个奇怪的修复:

假设您正在运行iPhone Retina 4-inch的模拟器,只需选择其他 iPhone 模拟器,例如iPhone 3.5-inchiPhone 4-inch 64 bit

不知何故,这迫使 iAd 再次出现!

于 2014-08-26T10:24:31.693 回答