广告未在iOS设备上展示

问题描述 投票:0回答:2

在颤动中,我们想要使用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
dart admob flutter
2个回答
1
投票

我们尝试了几个终端。

  • [确定]华硕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可能不正确。


0
投票

- >隐私然后

- >广告然后

- >限制广告跟踪当重复打开和关闭时,会显示Admob。

也许DeviceID处于同一状态是不好的?

© www.soinside.com 2019 - 2024. All rights reserved.