[Android & Kotlin] AdMob 広告をGoogle Mobile Ads SDKで設定する

無料でアプリを公開して広告を貼りましょう。定番はGoogleがやっている AdMob です。アプリの人気がでればそれなりにマネタイズになります。

Android Studio
2021.1.1




AdMob Banner

 
このAdMob広告の設定は、Google Mobile Ads SDKを使った今までの方法です。
Firebaseを使うAdMob設定とは異なりますので注意してください。
 
Google的にはFirebaseに移行したいのでしょうけれど、まだSDKの方法でないと支障がでるケースを考えて残してあると考えられます。
基本的にはAndroid Admob ガイドに沿って進めますが時々情報が古いこともあったりします。(この記事が古い場合もありますが)

1x1.trans - [Android & Kotlin] AdMob 広告をGoogle Mobile Ads SDKで設定する


 
また、ここでの実装はxmlファイルにIDを書くやり方と、コードで記述する方法について試してみます。
 
 

play-services-ads を設定

 
「build.gradle (Module: app)」ファイルの編集
 
1x1.trans - [Android & Kotlin] AdMob 広告をGoogle Mobile Ads SDKで設定する
 
dependencies に play-services-ads を追加
com.google.android.gms:play-services-ads.x.x.x
(バージョンは随時更新されます)
 
build.gradle(Module: )


尚、Android Admob ガイドには以下の設定がありますが、古いAndroid Studioでの設定と思われ、2021.1.1ではこれを入れるとエラーになります
因みにgoogle(), MavenCentral()はsettings.gradleにそれらしきものが追加されていておそらく不要になったのだと思われます。
またバージョンの21から変更があるようなので臨機応変な対応が常に必要です

 

meta-dataにApp IDを設定

 
アプリの AndroidManifest.xml に meta-data タグを追加します。
ADMOB_APP_IDには
ここではテストのアプリIDを設定
ca-app-pub-3940256099942544~3347511713

リリースではあなたのアプリIDを設定します。
 
AndroidManifest.xml

 

レイアウトファイルにAdView、AdUnitId の記述

 
xmlns:adsの追加、RelativeLayoutなので
android:layout_alignParentBottom=”true”
にてBottomに設定します

activity_main.xml


 
画像を入れた場合は、descriptonを指定しているので
strings.xml


ちなみに
ca-app-pub-3940256099942544/6300978111
このadUnitId、広告ユニットIDはテスト用です。

com.google.android.gms.ads.xxx
は応答に時間がかかることがありエラーがしばらく続くことがあります。

本番では、UnitIDをAdMobから取得した正式なものを使います

 

Activityの記述

 
com.google.android.gms.ads クラスのインポート
AdView と AdRequest の記述
 
やり方としてレイアウトをどうするかによってxml ファイルで調整するか、java コードで書くケースがあります。こちらでは前者のタイプでやってみます。

またリスナーを設定してAdMobのライフサイクルを確認できデバッグに役立ちます。

MainActivity.kt


 
これで実行してみると
 
1x1.trans - [Android & Kotlin] AdMob 広告をGoogle Mobile Ads SDKで設定する


 
広告がボトムに表示されました。
 
 

コードのみで実装

 
動的な表示、あるいはまとめてコントロールしたい場合などにおいてxmlファイルでの記述は使いにくいので、コードで記述してみます。Manifestやbuild.gradleは同じです。
 
MainActivity.kt


 
1x1.trans - [Android & Kotlin] AdMob 広告をGoogle Mobile Ads SDKで設定する

ここではテスト用IDを使っています。

 

アプリ ID と広告ユニット ID

 
AdMobに登録が済んでいない場合は申し込みをします。
AdMob に申し込む
 
アプリ IDは、AdMob にアプリを追加すると割り当てられる一意の ID 番号でアプリの識別に使用されます。
 
アプリ ID の確認:

Monetize and promote your app with AdMob.
から AdMob アカウントにログイン
サイドバーで該当する [アプリ] をクリック
再びサイドバーで「アプリの設定」アイコンをクリック
 
 ca-app-pub-9999999999999~99999999 のように「〜」が間にあるIDです。
 
1x1.trans - [Android & Kotlin] AdMob 広告をGoogle Mobile Ads SDKで設定する


 
広告ユニット ID は、AdMob で作成される各広告ユニットに割り当てられる一意の ID 番号で、バナー広告、インターステーシャル広告などアプリ内の広告を識別するためのものです。
 
広告ユニット ID の確認
Monetize and promote your app with AdMob.
から AdMob アカウントにログイン
サイドバーで [アプリ] をクリックします。
再びサイドバーで「広告ユニット」のアイコンをクリックすると広告ユニットのIDの一覧が表示されます。
 
ca-app-pub-9999999999999/99999999 のように「/」があるIDです。
 
1x1.trans - [Android & Kotlin] AdMob 広告をGoogle Mobile Ads SDKで設定する
 
広告が表示されない場合は、
 
activity a00 100x100 - [Android & Kotlin] AdMob 広告をGoogle Mobile Ads SDKで設定する
GoogleではFirebaseを使って詳細な解析ができるAdMobサービスを提供しています。今までのsdkを使った方法も残ってはいますが、...

 
 
References:
Android向けMobile Ads SDK
AdMob に申し込む

シェアする

  • このエントリーをはてなブックマークに追加

フォローする