【发布时间】:2021-02-03 16:04:42
【问题描述】:
我有 3 个应用使用旧版本的 firebase_admob (0.9.3)、firebase_core (0.4.4) 和 firebase_analytics (5.0.11) 相应地显示广告。
现在我已将其中一个更新为这些软件包的最新版本,iOS 上的生产广告在调试时输出“未能加载广告”消息。
这些是最新版本:
- firebase_admob:^0.10.0+2
- firebase_core:^0.5.0+1
- firebase_analytics:^6.0.2
测试广告同时在 Android 和 iOS 上展示。制作广告仅在 Android 上展示。就我所见,如果展示了测试广告,则说明实施是正确的。
我还在 Info.plist 中添加了这些键:
<key>GADApplicationIdentifier</key>
<string>ca-app-pub-xxxxx-my-app-id-xxxxx</string>
<key>SKAdNetworkItems</key>
<array>
<dict>
<key>SKAdNetworkIdentifier</key>
<string>cstr6suwn9.skadnetwork</string>
</dict>
</array>
在 AdMob 控制面板上,我可以看到我收到了广告请求,但根本没有展示。
没有关于调试输出的更多信息,所以我无法理解它。
这是 Xcode 12.0.1 的输出(在物理设备上运行):
<Google> To get test ads on this device, set: GADMobileAds.sharedInstance.requestConfiguration.testDeviceIdentifiers = @[ @"b15cb21bc27c0f3484e5b7c4df41e429" ];
FirebaseAdMobPlugin <warning> adView:didFailToReceiveAdWithError: Request Error: No ad to show. (MobileAd <FLTBannerAd: 0x281bec4e0> PENDING mobileAdId:46290759 for: <GADBannerView: 0x12ff916c0; frame = (0 0; 320 50); clipsToBounds = YES; layer = <CALayer: 0x283fd38a0>>)
flutter: BannerAd event is MobileAdEvent.failedToLoad
这很奇怪,因为如果我设置了这个测试设备 ID,我会在物理设备上看到测试广告。但在其他应用程序上,我没有收到此消息,实际上我收到的是真实广告。
【问题讨论】:
-
尝试改用
admob_flutter。个人觉得比firebase_admob
标签: firebase flutter admob ads