0

当我运行我的应用程序时,我可以在模拟器中看到我的 iAd,它预先填充了“测试广告”

但是,当我在我的设备上运行应用程序时,iAd 区域是空白的,没有预填充的广告。

为什么是这样?

我的 iAd 在 UITableViewCell 中:

#import "iAdCell.h"


@implementation iAdCell
@synthesize adView;

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
    if ((self = [super initWithStyle:style reuseIdentifier:reuseIdentifier])) {
        adView = [[ADBannerView alloc] initWithFrame:CGRectZero];
        adView.requiredContentSizeIdentifiers = [NSSet setWithObject:ADBannerContentSizeIdentifier320x50];
        adView.currentContentSizeIdentifier = ADBannerContentSizeIdentifier320x50;
        adView.delegate=self;
        [self.contentView addSubview:adView];
    }
    return self;
}


- (void)setSelected:(BOOL)selected animated:(BOOL)animated {

    [super setSelected:selected animated:animated];

    // Configure the view for the selected state
}


- (void)dealloc {
    [adView release];
    [super dealloc];
}


@end
4

2 回答 2

1

在提问者添加更多信息后进行编辑:

如果 iAd 在表格单元格中,Apple 将拒绝您的申请。iAd 必须位于页面上的静态位置,而不是任何类型的滚动视图(包括表格视图)。这是因为 iAd 按展示次数和点击次数付费,因此在表格视图单元格中放置 iAd 将导致它在屏幕滚动和再次滚动时重新加载,这可能是多次。这看起来像是“点击欺诈”或类似行为。苹果不允许这样做。


可能是因为您的请求失败。在请求失败时发送的失败委托消息中放置一个断点或一些日志记录,您将能够查看它是否被调用。

iAd 请求可能会因多种原因而失败,包括您所在国家/地区不提供 iAd、没有足够的广告资源来满足请求、广告已在本次会话中展示等。

可能会显示在模拟器上,因为模拟器实际上并没有任何关于其位置的概念(例如,地图总是将您的位置显示为苹果在库比蒂诺的总部)。

于 2010-09-14T18:11:35.893 回答
0

有同样的问题,对我来说解决问题的只是从您的设备中删除该应用程序并从 XCode 重新安装。

于 2012-03-11T18:43:40.693 回答