adUnitId未在flutter中显示google横幅广告

whhtz7ly  于 2022-11-17  发布在  Flutter
关注(0)|答案(2)|浏览(147)

我试图通过admob_flutter包实现谷歌广告,通过admob帐户创建adunitId.但这些adUnitId不显示广告.当我使用ca-app-pub-3940256099942544/2934735716这个adUnitId,然后它在谷歌广告上显示测试广告.下面是我的代码:

import 'dart:async';
import 'dart:io';
import 'package:admob_flutter/admob_flutter.dart';
import 'package:flutter/material.dart';

class GoogleAdBanner extends StatefulWidget {
  GoogleAdBanner(this.size);

  final AdmobBannerSize size;

  @override
  State<StatefulWidget> createState() => BannerAdState();
}

class BannerAdState extends State<GoogleAdBanner> {
  AdmobBanner _bannerAd;
  final Completer<AdmobBanner> bannerCompleter = Completer<AdmobBanner>();

  @override
  void initState() {
    super.initState();
    Admob.requestTrackingAuthorization();
  }

  String getBannerAdUnitId() {
    if (Platform.isIOS) {
      return 'ca-app-pub-7282911616152886/6377817226';
    } else if (Platform.isAndroid) {
      return 'ca-app-pub-7282911616152886/8046122111';
    }
    return null;
  }

  void handleEvent(
      AdmobAdEvent event, Map<String, dynamic> args, String adType) {
    switch (event) {
      case AdmobAdEvent.loaded:
        print('New Admob $adType Ad loaded!');
        break;
      case AdmobAdEvent.opened:
        print('Admob $adType Ad opened!');
        break;
      case AdmobAdEvent.closed:
        print('Admob $adType Ad closed!');
        break;
      case AdmobAdEvent.failedToLoad:
        print('Admob $adType failed to load. :(');
        break;
      default:
    }
  }

  @override
  Widget build(BuildContext context) {
    return AdmobBanner(
      adUnitId: getBannerAdUnitId(), //'ca-app-pub-3940256099942544/2934735716',
      adSize: widget.size,
      listener: (AdmobAdEvent event,
          Map<String, dynamic> args) {
        handleEvent(event, args, 'Banner');
      },
      onBannerCreated: (AdmobBannerController controller) {},
    );
  }
}

using it as
GoogleAdBanner(AdmobBannerSize.LARGE_BANNER)

请帮忙。提前感谢!

ioekq8ef

ioekq8ef1#

真实的的广告只有在有足够数量的请求时才会显示。在达到阈值之前,库存是空的。如果你能看到测试广告,你就可以确信实现是正确的。确保你在发布前更改了manifest和info.plist中的广告应用ID,并在广告请求中添加了正确的广告单元。

9w11ddsr

9w11ddsr2#

use getBannerAdUnitId() like this:-    
String get BannerAdUnitId(){

//正文}
广告单元标识:广告单元标识横幅(),

相关问题