iOS 来自 AdMob 的应用程序错误 = com.google.DummyAdapter?

iOS app from AdMob error = com.google.DummyAdapter?

 <Google> Cannot find an ad network adapter with the name(s): (
"com.google.DummyAdapter"
). Remember to link all required ad network adapters and SDKs, and   set -ObjC in the 'Other Linker Flags' setting of your build target.

在我的 AdMob.com 帐户中,在我的应用程序名称旁边的中介堆栈中,在中介下显示 2 个广告来源,当我点击 2 个广告来源时,它显示 iAd 为 1.50 eCPM,AdMob 为 1.00 (最低)有效每千次展示费用。 AdMob 旁边写着 AdMob Network(不是最大化收入。现在优化)。 (应用目前不在 iOS 应用商店中)。

我正在使用 GoogleMobileAdsSDKiOS-7.1.0。当 -7.1.0 是新的时,我按照 Admob 网站上的所有说明进行广告投放。所以我已经在 "other linker flags" 中设置了 -ObjC。我有所有的网络适配器和 SDK。所以我不知道为什么昨天和今天我收到这条 Google 消息,但以前从未收到过。为什么我会收到带有 "com.google.DummyAdapter" 的消息?

(我只在 iPhone 6 设备上构建和 运行 Xcode 项目时收到 Google 消息。对其他设备没有影响。只有 iPhone 尽管 AdMob.com 展示了 13 次展示,但 6 个实时广告未填充)

当返回到应用程序的实际网络列表为空时,AdMob 发回仅包含 "com.google.DummyAdapter" 的中介列表。这是一个特例,它本质上只是意味着 "no fill".

如果您设置有效每千次展示费用底价并且 AdMob 是您唯一的网络,则很可能会发生这种情况。例如,如果您将底价设置为 1.00,而 AdMob 没有价值 1.00 美元 eCPM 的广告可供展示,则 AdMob 会将自己排除在您的中介链之外。

在此示例中,我仍然希望返回 iAd。至于为什么不是,也许您的广告单元在国家/地区级别设置了 iAd 在您所在的国家/地区被禁用(大胆猜测)。

这是针对不同人的解决方案不同的错误之一。

就我而言,解决方法是:
1.在取景器中找到googlemobileads.framework
2. 拖入垃圾箱。
3.重新下载。
4.解压
5. 将新的拖到与旧的相同的位置。

如果这对您不起作用,请环顾四周;类似的问题还有很多,估计其中一个就有答案了。

在我的例子中,我使用的是 Google's Demo ad units。测试广告在真实设备上有效,但在模拟器上我遇到了与您相同的错误。

解决方案是使用真实的广告单元 ID 和 Enabling test devices

对我来说,我是 运行 iOS 14。我不得不在“设置”>“隐私”>“跟踪”中更改 phone 的设置,并启用 Allow Apps To Request To Track

此外,启用此设置使我的 phone 得到一个 advertising ID(在它全为 0 之前)。没有它,this page 就没用了。