广告未在iOS设备上展示
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了广告未在iOS设备上展示相关的知识,希望对你有一定的参考价值。
在颤动中,我们想要使用AdMob。
我们设置如下。由于可能存在关系,我们还会编写Firebase Analytics。
[pubspec.yaml]
dependencies:
flutter:
sdk: flutter
firebase_admob: ^0.5.7
firebase_analytics: ^1.0.3
[main.dart]
void main() {
// [Analytics]
FirebaseAnalytics().logAppOpen();
// [Initialize:AdMob]
FirebaseAdMob.instance.initialize(
appId: Platform.isandroid
? 'ca-app-pub-xxxxxxxxxxxxxxxx~xxxxxxxxxx'
: 'ca-app-pub-yyyyyyyyyyyyyyyy~yyyyyyyyyy',
);
// [Create Banner Ad:AdMob]
createBannerAd()
..load()
..show(
anchorType: AnchorType.top,
);
runApp(MyApp());
}
final MobileAdTargetingInfo targetingInfo = new MobileAdTargetingInfo(
testDevices: Const.testDevices,
keywords: <String>[
'foo',
'bar',
],
birthday: new DateTime.now(),
childDirected: true,
gender: MobileAdGender.female,
);
// [Create Banner Ad:AdMob]
BannerAd createBannerAd() {
return new BannerAd(
adUnitId: Platform.isAndroid
? 'ca-app-pub-XXXXXXXXXXXXXXXX/XXXXXXXXXX'
: 'ca-app-pub-YYYYYYYYYYYYYYYY~YYYYYYYYYY',
size: AdSize.banner,
targetingInfo: targetingInfo,
listener: (MobileAdEvent event) {
print("BannerAd event $event");
},
);
}
我们下载Firebase配置文件并将其放在以下位置。在Xcode的目标成员资格中,我们已确认已正确设置。
/android/app/google-services.json
/ios/Runner/GoogleService-Info.plist
它通常在Android设备上显示。但是,它不会显示在iOS设备上。输出以下日志。
2018-08-29 11:21:58.147849+0900 Runner[459:115739] FirebaseAdMobPlugin <warning> [FIRApp configure]
2018-08-29 11:21:58.157062+0900 Runner[459:115880] 5.5.0 - [Firebase/Core][I-COR000003] The default Firebase app has not yet been configured. Add `[FIRApp configure];` (`FirebaseApp.configure()` in Swift) to your application initialization. Read more:
[abridgement]
2018-08-29 11:21:59.755279+0900 Runner[459:115739] FirebaseAdMobPlugin <warning> adView:didFailToReceiveAdWithError: Request Error: No ad to show. (MobileAd <FLTBannerAd: 0x113ef81b0> PENDING mobileAdId:ZZZZZZZZZ for: <GADBannerView: 0x113efa7b0; frame = (0 0; 320 50); clipsToBounds = YES; layer = <CALayer: 0x113efac40>>)
2018-08-29 11:21:59.757247+0900 Runner[459:115885] flutter: BannerAd event MobileAdEvent.failedToLoad
我们应该如何在扑动中实施[FIRApp configure];
?没必要吗?我们在示例代码中找不到它。
我们的设置是否正确?如果我们再等几天,mobileAdId会不会等待?
$ flutter doctor -v
[✓] Flutter (Channel dev, v0.7.2, on Mac OS X 10.13.6 17G65, locale ja)
• Flutter version 0.7.2 at /Applications/flutter
• Framework revision f8a2fc7c28 (4 days ago), 2018-08-27 20:58:30 +0200
• Engine revision af42b6dc95
• Dart version 2.1.0-dev.1.0.flutter-ccb16f7282
[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
• Android SDK at /Users/xxxxx/src/android-sdks
• Android NDK at /Users/xxxxx/src/android-sdks/ndk-bundle
• Platform android-27, build-tools 27.0.3
• ANDROID_HOME = /Users/xxxxx/src/android-sdks
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)
• All Android licenses accepted.
[✓] iOS toolchain - develop for iOS devices (Xcode 9.4.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 9.4.1, Build version 9F2000
• ios-deploy 1.9.2
• CocoaPods version 1.5.3
[✓] Android Studio (version 3.1)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin version 27.1.1
• Dart plugin version 173.4700
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)
[✓] VS Code (version 1.25.1)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 2.17.1
[✓] Connected devices (1 available)
• iPhone 6 Plus • XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX • ios • iOS 11.4.1
• No issues found!
与此问题并行,我们也与AdMob联系。不会使用以下应用ID和广告单元ID显示广告。
ca-app-pub-3940256099942544~1458002511
ca-app-pub-3940256099942544/2934735716
我们尝试了几个终端。
- [确定]华硕Z017DA(Android)
- [确定] iPad mini
- [确定] iPhone 4s
- [NG] iPhone 6 Plus
- [NG] iPhone SE
我们尝试了各种变化但它们无效。然而,今天“没有广告显示”突然停止发生。但广告尚未显示。
我们认为广告可能会在屏幕外显示。当我们进行以下设置时,广告会显示在我们预期的位置。
_bannerAd
..load()
..show(
anchorType: AnchorType.top,
anchorOffset: 50.0,
);
但是,在更改之前正常显示的终端中,广告显示向下移动。我们无法采用这种方法,因为我们无法尝试所有的终端。
接下来,我们将广告置于屏幕下方。
_bannerAd
..load()
..show(
anchorType: AnchorType.bottom,
);
在这种情况下,我们能够确认广告在所有终端上正常显示。我们想把广告放在首位,但我们放弃了。
在某些情况下,AnchorType.top可能不正确。
- >隐私然后
- >广告然后
- >限制广告跟踪当重复打开和关闭时,会显示Admob。
也许DeviceID处于同一状态是不好的?
以上是关于广告未在iOS设备上展示的主要内容,如果未能解决你的问题,请参考以下文章
AdMob 未在 iOS 版本上投放广告。错误代码 8,找不到名称为 ("com.google.DummyAdapter") 的广告网络适配器
Google Adsense 广告未在 UIWebView 中加载
使用 admob 展示广告后,无法在 iOS 设备上的 ionic 应用程序的 iframe 内播放嵌入的 youtube 视频