AdWhirl (AdMob, iAd) 广告未在已发布的 iPhone 应用程序中显示

Posted

技术标签:

【中文标题】AdWhirl (AdMob, iAd) 广告未在已发布的 iPhone 应用程序中显示【英文标题】:AdWhirl (AdMob, iAd) Ads not showing in released iPhone App 【发布时间】:2011-10-13 15:14:26 【问题描述】:

我开发了我的第一个免费应用程序(“Aviation DG”), 并因此添加了 adWhirl。但是似乎我已经完成了 有事吗。根本没有广告显示。 (AdWhirl 中的设置:90% iAd / 10% AdMob / 10% 用于 1 个自家广告)。我没有看到他们中的任何一个:(

在 iAd 我有 45 个请求 0 次展示,在 AdMob 我有 152 个请求 152 次展示,但没有展示任何广告(至少那些 我问过他们是否看到广告的人)。

当我测试应用程序时,它显示横幅 iAD 测试(或其他 说,来自苹果的黑色横幅)。

你知道我做错了什么吗?或者事情是否正确 安装,我只是没有收到任何广告。如果是,那是为什么呢?

非常感谢您的帮助。这可能只是一个小 目前项目,但我打算将广告网络添加到其他应用程序 并且很高兴知道它为什么不起作用:)

干杯 罗尼

以下是我在 xcode 中所做的:

添加了以下框架:

iAd / AVFoundation / CoreLocation / AddressBook / AudioToolbox / MapKit / MediaPlayer / MessageUI / QuartzCore / SystemConfiguration / libsqlite3.dylib / libz.dylib

添加文件夹 TouchJSON,添加来自 AdWhirl 的文件夹 AdWhirl 资源。

由于我没有找到说明 PDF 中的适配器设置,所以我 删除了所有网络,现在适配器中有以下文件 文件夹:

AdWhirlAdapterGoogleAdMobAds.h/.m AdWhirlAdapterIAd.h/.m AdWhirlAdNetworkAdapter.h

然后我从 adMob 添加了 AdLibrary:

GADBannerView.h GADBannerViewDelegate.h GADInterstitial.h GADInterstitialDelegate.h GADRequest.h GADRequestError.h libGoogleAdMobAds.a

然后我更改了以下部分(在 AdWhirlView.h 中),即广告 显示在页面底部:

#define kAdWhirlAppVer 300

#define kAdWhirlViewWidth 320
#define kAdWhirlViewHeight 50
#define kAdWhirlViewDefaultSize \
                       (CGSizeMake(kAdWhirlViewWidth,
kAdWhirlViewHeight))
#define kAdWhirlViewDefaultFrame \
                       (CGRectMake(0,(460-
kAdWhirlViewHeight),kAdWhirlViewWidth, kAdWhirlViewHeight))

#define kAdWhirlDefaultConfigURL @"http://mob.adwhirl.com/getInfo.php"
#define kAdWhirlDefaultImpMetricURL @"http://met.adwhirl.com/
exmet.php"
#define kAdWhirlDefaultClickMetricURL @"http://met.adwhirl.com/
exclick.php"
#define kAdWhirlDefaultCustomAdURL @"http://mob.adwhirl.com/
custom.php"
#define kAWMinimumTimeBetweenFreshAdRequests 4.9f
#define kAdWhirlAdRequestTimeout 10

在我的视图控制器 .m 文件中,我有这个:

#define kSampleAppKey @"x000x00000000x00000x000x0000x000" //the number
of my adwhirl appid

@implementation...

#pragma mark AdWhirlDelegate methods

- (NSString *)adWhirlApplicationKey
   return kSampleAppKey;


- (UIViewController *)viewControllerForPresentingModalView
   return self;

在视图中确实加载了:

   AdWhirlView *awView = [AdWhirlView
requestAdWhirlViewWithDelegate:self];

   [self.view addSubview:awView];

   [super viewDidLoad];

在 viewcontroller .h 文件中:

#import "AdWhirlView.h"
#import "AdWhirlDelegateProtocol.h"

@interface Aviation_DGViewController : UIViewController
<ItemChooserDelegate, InfoDisplayDelegate, AdWhirlDelegate> 

【问题讨论】:

【参考方案1】:

不要更改AdWhirlView.h:

#define kAdWhirlViewDefaultFrame (CGRectMake(0,(460-kAdWhirlViewHeight),kAdWhirlViewWidth, kAdWhirlViewHeight))

您可以通过调整坐标将广告置于底部,但整个屏幕上部后面的内容将处于非活动状态。所以,保留为:

#define kAdWhirlViewDefaultFrame (CGRectMake(0,0,kAdWhirlViewWidth, kAdWhirlViewHeight))

相反,在-(void)viewDidLoad,居中awViewawView.center

AdWhirlView *awView = [AdWhirlView requestAdWhirlViewWithDelegate:self];

awView.center = CGPointMake(self.view.frame.size.width/2, self.view.frame.size.height-kAdWhirlViewHeight/2);

[self.view addSubview:awView];

【讨论】:

【参考方案2】:

iAd 的填充率有时会很低,尤其是在您每天没有数千个广告请求的情况下。这取决于国家等。

如果您在开发中看到 iAds 测试广告,那么我怀疑您没有做错任何事情。

我相信您已经下载了自己的应用并看到了自家广告?

【讨论】:

感谢您的快速回答,我需要等待多长时间才能看到自家广告?因为我没有看到任何这些。 没问题 :) 希望其他人知道答案,这让我很紧张 :D 至少它不适用于下载 100'000 次的应用程序 :D 但喜欢 10 次之类的,所以如果有人知道问题,有足够的时间进行更新。【参考方案3】:

我可以从您发布的代码中确认您正确设置了 AdWhirl。我不知道您对 kAWMinimumTimeBetweenFreshAdRequests 和 kAdWhirlAdRequestTimeout 做了什么,但是如果不设置这些值会怎样?

自家广告应立即准备就绪。这假设您创建了一个自家广告并将其设置为在您的应用中展示。我建议一次投放 1 个广告网络进行测试(例如 100% 自家广告),然后看看是否能收到。

【讨论】:

kAWMinimumTimeBetweenFreshAdRequests 和 kAdWhirlAdRequestTimeout,我没有碰 :) 我唯一改变的是 #define kAdWhirlViewDefaultFrame \ (CGRectMake(0,(460- kAdWhirlViewHeight),kAdWhirlViewWidth, kAdWhirlViewHeight)) 部分> 哦,我昨天尝试只将内部添加设置为 100%,没有 iAd 和 AdMobs,但我仍然没有在我的 iPhone 上看到任何内容,我的兄弟也没有在他的 iPhone 上看到任何内容。真的很奇怪,我不应该至少看到我家的广告吗?我确实上传了 3 种尺寸的房子添加(.png 横幅文件)并将其与 AdWhirl 连接到这个项目。看来连接是有的,不然 AdMob 和 iAd 不会统计请求吧? ios 中,每次启动应用程序时都会通过第一个广告请求获取配置。因此,当您重新运行应用程序时,它应该会更新您的设置。如果您看到 AdMob 和 iAd 请求,则必须正确实施代码;我认为在 AdWhirl UI 中设置它是一个问题。点击您的应用,并在“应用网络设置”下确保自家广告已开启并拥有 100% 的流量(看起来您是这样做的)。然后在您的应用中的“自家广告”下,确保您有自家广告,并且它们的总分配率为 100%。

以上是关于AdWhirl (AdMob, iAd) 广告未在已发布的 iPhone 应用程序中显示的主要内容,如果未能解决你的问题,请参考以下文章

iAd 和 AdMob 广告未在已发布的 iPhone 应用程序中显示

iAd 仅在特定国家/地区提供

iAd 仅在特定国家/地区提供

iPhone -iAd、Admob 和本地广告

iOS开发-植入广告(iAd, Admob实例)

iOS开发中如何使用广告-iAd-Admob-关东升-专题视频课程