LoginSignup
14
7

More than 5 years have passed since last update.

【Flutter】Firebase AdMobを使って広告表示する

Last updated at Posted at 2018-03-24

FlutterアプリでFirebase AdMobを使って広告表示する方法メモです。

手順

1. AdMobのパッケージ追加

pubspec.yaml の dependencies に firebase_admob 追記する。

pubspec.yaml
dependencies:
  flutter:
    sdk: flutter
  firebase_admob:

2. パッケージ取得

terminalで下記のコマンド実行。

$ flutter packages get

3. 初期化 & 読み込み & 表示

@override
void initState() {
  super.initState();
  FirebaseAdMob.instance.initialize(appId: FirebaseAdMob.testAppId);
  _bannerAd = createBannerAd()
    ..load()
    ..show();
}

BannerAd createBannerAd() {
  return new BannerAd(
    adUnitId: BannerAd.testAdUnitId,
    size: AdSize.banner,
    targetingInfo: targetingInfo,
    listener: (MobileAdEvent event) {
      print("BannerAd event $event");
    },
  );
}

static final MobileAdTargetingInfo targetingInfo = new MobileAdTargetingInfo(
  keywords: <String>['foo', 'bar'],
  contentUrl: 'http://foo.com/bar.html',
  birthday: new DateTime.now(),
  childDirected: true,
  gender: MobileAdGender.male,
);

(参考)pluginの show() のコード

anchorType を指定することでで表示位置を変えることができます。

firebase_admob.dart
  Future<bool> show(
      {double anchorOffset = 0.0, AnchorType anchorType = AnchorType.bottom}) {
    return _invokeBooleanMethod("showAd", <String, dynamic>{
      'id': id,
      'anchorOffset': anchorOffset.toString(),
      'anchorType': anchorType == AnchorType.top ? "top" : "bottom"
    });
  }

環境

  • Flutter 0.1.5
  • Dart 2.0.0-dev.28.0
  • firebase_admob 0.5.0

補足

2018/03時点ではバナー広告とインタースティシャル広告のみ対応しているようです。

あとfirebase_admob PluginのREADMEのサンプルコードが一部間違っていたようなのでPR出してみました。
https://github.com/flutter/plugins/pull/436

リンク

firebase_admob | Flutter Package
https://pub.dartlang.org/packages/firebase_admob

Using Packages - Flutter
https://flutter.io/using-packages/

14
7
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
7