我的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,我需要更改很多内容。 :(
答案 0 :(得分:0)
我实际上是自己找到了答案。
我在GADRequest
找到了一个名为testDevices
的媒体资源。从物业的描述:
将为具有此阵列中指定的设备ID的设备返回测试广告
因此,如果我将测试设备的ID放在该阵列中,我不需要每次都更改ID。我发现了一个名为kGADSimulatorID
的常数。它的描述说
将此常量添加到testDevices属性的数组中,以便在模拟器上接收测试广告。
所以我这样做了:
let request = GADRequest()
request.testDevices = [kGADSimulatorID]
myAd.loadRequest(request)