我的测试iOS设备产生了真实的adMob点击?

3

我是AdMob的新手。

我从今天开始编辑我的第一个应用程序。

我使用了Google手册和其他一些帮助,因为我正在尝试保持iAd并在iAd不可用时使用AdMob等。

因此,我将我的两个测试设备(iPhone和iPad)放在以下行中:

GADRequest *request = [GADRequest request];
request.testDevices = @[ @"xxxxxxxx", @"xxxxxxxx" ];
[self.admobBannerView loadRequest:request];

在 xxxxxxxx 的位置上是我的设备ID。当我第一次在设备上运行 AdMob 时,通过调试器获得了这些 ID。
在我开始测试所有屏幕中的横幅广告2或3分钟后,横幅广告是正常的 - 测试横幅广告、320x50像素等等...但在此之后,我发现横幅广告变成了真实的广告。是的,我尝试点击这些“真实”广告三到四次,它们是真的!那么我是不是违规了呢? :)
我刷新我的统计数据并看到大约20美分... 所有这些展示和点击都是从我的测试设备生成的,我对整个情况感到担忧。
我想不仅使用模拟器。
附带评论中的代码:
以下是我的 AdMob 代码的其余部分:
self.admobBannerView.delegate = self; 
[self.view addSubview:self.admobBannerView]; 
[self.admobBannerView loadRequest:[GADRequest request]]; 

这个loadRequest函数(第二个参数)是我的错误吗?

1个回答

3

在您的设备上运行应用程序。在调试区中,AdMob将向您提供测试ID。它应该看起来类似于这样:

<Google> To get test ads on this device, call: request.testDevices = @[ @"testDeviceNumber" ]

使用此代码请求广告。例如,您可以这样请求插页式测试广告:

    // AdMob Interstitial
    interstitial_ = [[GADInterstitial alloc] init];
    interstitial_.adUnitID = MY_INTERSTITIAL_UNIT_ID;
    GADRequest *request = [GADRequest request];
    request.testDevices = @[@"insertTestDeviceNumberHere"];
    [interstitial_ loadRequest:request];

然后,要再次获取实时的AdMob广告,请删除或注释掉request.testDevices = @[@"insertTestDeviceNumberHere"];


根据用户添加的代码进行编辑:

您的问题出在这一行:[self.admobBannerView loadRequest:[GADRequest request]];

使用[GADRequest request]会创建一个全新的请求。将其更改为:

    GADRequest *request = [GADRequest request];
    request.testDevices = @[ @"insertTestDeviceNumberHere"];
    [self.admobBannerView loadRequest:request];
    [self.view addSubview:self.admobBannerView];

是的,我做完全相同的事情,就像你在这里写的一样。但是实际情况是,在测试设备上的2或3分钟内,我会看到测试横幅广告,之后横幅广告变成真正的广告,当我点击广告时,我可以打开广告的真实页面。因此,这个问题给我带来了大约200次展示和大约10次点击,我希望AdSense团队对我宽容一些 :)以后的测试中,我将使用模拟器。我不想成为“罪犯” :) - Panayot
@ Daniel,你看到了,我是新来的,无法投票。 所以,昨天我在考虑是否有重复的东西。 这是我的adMob代码的其余部分:self.admobBannerView.delegate = self; [self.view addSubview:self.admobBannerView]; [self.admobBannerView loadRequest:[GADRequest request]];这个loadRequest(第二个)是我的错误吗?... - Panayot
1
@Panayot 我已经编辑了我的答案,包括你评论中提供的代码。 - Daniel Storm
抱歉,我有点困惑,请问如果我们完成了测试并想要提交应用程序,并从我们 Admob 帐户中的所有其他用户(真实用户而不是测试用户)获取设备 ID,那么我们应该如何处理 request.testDevices - Reza.Ab
1
@Reza.Ab 只需将 request.testDevices 注释或删除即可。 - Daniel Storm
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接