Iphone iAd出现在模拟器中,但不在设备上
当我运行我的应用程序时,我可以在模拟器中看到我的iAd,其中预先填充了“测试广告” 但是,当我在我的设备上运行应用程序时,iAd区域是空白的,没有预先填充的广告 为什么会这样 我的iAd位于UITableViewCell中:Iphone iAd出现在模拟器中,但不在设备上,iphone,objective-c,cocoa-touch,interface-builder,iad,Iphone,Objective C,Cocoa Touch,Interface Builder,Iad,当我运行我的应用程序时,我可以在模拟器中看到我的iAd,其中预先填充了“测试广告” 但是,当我在我的设备上运行应用程序时,iAd区域是空白的,没有预先填充的广告 为什么会这样 我的iAd位于UITableViewCell中: #import "iAdCell.h" @implementation iAdCell @synthesize adView; - (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSStr
#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
提问者添加更多信息后编辑: 如果iAd位于表格单元格内,苹果将拒绝您的应用程序。IAD需要在页面上处于静态位置,而不是任何类型的滚动视图(包括表视图)。这是因为iAd是通过印象和点击来支付的,所以在表格视图单元格中放置iAd会导致它在屏幕上和屏幕上滚动时被重新加载,这可能会多次。这看起来像是“点击欺诈”或类似的行为。苹果不会允许这样做
可能是因为你的请求失败了。在请求失败时发送的failure delegate消息中放置断点或一些日志记录,您将能够看到它是否被调用 iAd请求可能会因多种原因而失败,包括您所在国家的iAd不可用、没有足够的库存来满足请求、广告已经在本次会议上显示过等
有可能在模拟器上显示的是,因为模拟器对其位置没有任何概念(例如,地图总是显示您的位置,即苹果在库比蒂诺的总部)。也有同样的问题,解决问题的方法是从您的设备上删除应用程序,然后从XCode重新安装。提供更多信息。根据苹果的建议,当出现错误时,你是否隐藏广告?如果是,您是否有网络连接?即使这样,也可能需要几秒钟的时间,我甚至不得不等待更长的时间才能看到测试广告。