什么是/是一直在更改广告单元ID常量的替代方案?

时间:2016-03-11 09:50:57

标签: ios swift admob

我的iOS应用包含来自AdMob的广告。由于Google的“入门指南”告诉我不要在模拟器上使用自己的ID,因此我必须始终在我的真实ID和测试ID之间进行更改。

当我测试广告是否会正确显示时,我会使用测试ID。之后,我需要存档应用程序以更新iTunes Connect中的应用程序。这一次,我需要将其更改为我的真实ID。然后,我发现有一些非常严重的错误,所以我需要将其更改回测试ID以进行调试。在我杀死了这些bug之后,我需要将它更改回真实的ID以进行另一次更新...

如你所见,这太烦人了!我想找到一种方法,只需"翻转开关"更改广告ID。你知道,当我想把它改成测试ID或真实ID时,我可以删除一些人类可读的字符(不是某些外来语言中的广告ID)或类似的东西。

我知道我可以为每个id使用常量:

let testId = "xxx"
let realId = "yyy"
let adId = testId
// And I'll use adId for all the places where required.

当我想将其更改为我的真实身份时,我可以

let adId = realId

但是,如果我的应用中有多个广告ID,我需要更改很多内容。 :(

1 个答案:

答案 0 :(得分:0)

我实际上是自己找到了答案。

我在GADRequest找到了一个名为testDevices的媒体资源。从物业的描述:

  

将为具有此阵列中指定的设备ID的设备返回测试广告

因此,如果我将测试设备的ID放在该阵列中,我不需要每次都更改ID。我发现了一个名为kGADSimulatorID的常数。它的描述说

  

将此常量添加到testDevices属性的数组中,以便在模拟器上接收测试广告。

所以我这样做了:

let request = GADRequest()
request.testDevices = [kGADSimulatorID]
myAd.loadRequest(request)