スタートガイド

このガイドは、AdMob で Android アプリを収益化することをご希望のパブリッシャー様のうち、Firebase を使用されていない方を対象としています。アプリで Firebase を使用する予定がある場合(または使用を検討している場合)は、このガイドの Firebase を使った AdMob 向けのバージョンをご確認ください。

アプリに Google Mobile Ads SDK を統合することは、広告を表示して収益を得るための第一歩です。SDK を統合したら、広告フォーマット(ネイティブ広告やリワード広告など)を選択して、手順に沿って実装してください。

前提条件

  • Android Studio 3.2 以降
  • minSdkVersion 16 以降
  • compileSdkVersion 28 以降

Mobile Ads SDK のインポート

アプリで Google Mobile Ads SDK をインポートするには、Google の Maven リポジトリを参照する Gradle 依存関係を使用します。まず、google() がプロジェクト レベルの build.gradle ファイルの allprojects セクションで参照されていることを確認します。

プロジェクト レベルの build.gradle の例(抜粋)

allprojects {
    repositories {
        google()
    }
}

次に、お客様のアプリレベルの build.gradle ファイルを開き、「dependencies」セクションを探します。

アプリレベルの build.gradle の例(抜粋)

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.appcompat:appcompat:1.0.2'
    implementation 'com.google.android.gms:play-services-ads:19.1.0'
}

上の例の太字の行(Mobile Ads SDK の最新バージョンと関連する追加の依存関係を読み込むように Gradle に指示する行)を追加します。作業が終わったらファイルを保存し、Gradle 同期を実施します。

AndroidManifest.xml を更新する

名前が com.google.android.gms.ads.APPLICATION_ID<meta-data> タグ追加して、AdMob のアプリ ID をアプリの AndroidManifest.xml ファイルに追加します。

アプリ ID は AdMob の管理画面で確認できます。android:value で、ご自身の AdMob アプリ ID を下記のように引用符で囲んで挿入します。

<manifest>
    <application>
        <!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 -->
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
    </application>
</manifest>

Mobile Ads SDK を初期化する

広告を読み込む前に、MobileAds.initialize() を呼び出して、アプリで Mobile Ads SDK を初期化します。初期化が完了すると(または 30 秒のタイムアウト後)に完了リスナーが呼び戻されます。この処理は 1 回だけ行います(アプリの起動時に行うのが理想的です)。

アクティビティで initialize() メソッドを呼び出す方法について、次に例を示します。

MainActivity の例(抜粋)

Java

package ...
import ...
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;

public class MainActivity extends AppCompatActivity {

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        MobileAds.initialize(this, new OnInitializationCompleteListener() {
            @Override
            public void onInitializationComplete(InitializationStatus initializationStatus) {
            }
        });
    }
}

Kotlin

package ...
import ...
import com.google.android.gms.ads.MobileAds;

class MainActivity : AppCompatActivity() {
    ...
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        MobileAds.initialize(this) {}
    }
    ...
}

メディエーションを使用している場合は、広告を読み込む前に、完了ハンドラが呼び出されるまで待ちます。これにより、すべてのメディエーション アダプタが確実に初期化されます。

広告フォーマットを選択する

これで Mobile Ads SDK がインポートされ、広告を実装できるようになりました。 さまざまな広告フォーマットが用意されている AdMob では、アプリのユーザー エクスペリエンスに最適なものを選択できます。

デバイス画面の上部か下部に表示される長方形の広告です。アプリの操作中は画面に表示され続けますが、一定時間が経過すると自動的に更新されるよう設定できます。モバイル広告を初めてお使いの場合は、この広告から始めるのが最適です。

バナー広告を実装する

インタースティシャル広告

ユーザーが閉じるまでアプリのインターフェース上に全画面表示される広告です。ゲームのレベルが切り替わる合間やタスクが完了した直後など、アプリの実行の流れが自然に一時停止するタイミングに使用することに適しています。

インタースティシャル広告を実装する

ネイティブ広告

アプリのデザインに合わせてカスタマイズできる広告です。広告の配置場所やスタイルを指定できるため、アプリのデザインに自然に溶け込んだレイアウトが可能になります。

ネイティブ広告 を実装する

リワード広告

短い動画を視聴し、体験プレイ広告やアンケートを操作したユーザーに報酬を進呈する広告です。無料利用のユーザーの収益化に効果的です。

リワード広告を実装する リワード広告を実装する(新しい API)