GMA Next-Gen SDK einrichten

Die Einbindung von GMA Next-Gen SDK in eine App ist der erste Schritt, um Anzeigen auszuliefern und Einnahmen zu erzielen. Nachdem Sie das SDK eingebunden haben, können Sie ein Anzeigenformat auswählen (z. B. native Anzeigen oder Videoanzeigen mit Prämie) und die Schritte zur Implementierung ausführen.

Hinweis

Führen Sie die Schritte in den folgenden Abschnitten aus, um Ihre App vorzubereiten.

Voraussetzungen für Apps

  • Achten Sie darauf, dass die Build-Datei Ihrer App die folgenden Werte verwendet:

    • Mindest-SDK-Version 24 oder höher
    • SDK-Version für die Kompilierung 35 oder höher
  • Verwenden Sie für Kotlin-Apps mindestens Kotlin-Version 1.9.

App in Ihrem AdMob-Konto einrichten

Registrieren Sie Ihre App als AdMob-App. Gehen Sie dazu so vor:

  1. Melden Sie sich in Ihrem AdMob-Konto an oder registrieren Sie sich für ein AdMob-Konto.

  2. Registrieren Sie Ihre App bei AdMob. Bei diesem Schritt wird eine AdMob-App mit einer eindeutigen AdMob-App ID erstellt, die später in dieser Anleitung benötigt wird.

Eigene App konfigurieren

  1. Fügen Sie in der Datei mit den Gradle-Einstellungen das Maven-Repository von Google und Maven Central Repository ein:

    Kotlin

    pluginManagement {
      repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
      }
    }
    
    dependencyResolutionManagement {
      repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
      repositories {
        google()
        mavenCentral()
      }
    }
    
    rootProject.name = "My Application"
    include(":app")

    Groovy

    pluginManagement {
      repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
      }
    }
    
    dependencyResolutionManagement {
      repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
      repositories {
        google()
        mavenCentral()
      }
    }
    
    rootProject.name = "My Application"
    include ':app'
  2. Fügen Sie der Build-Datei auf App-Ebene die Abhängigkeiten für GMA Next-Gen SDK hinzu:

    Kotlin

    dependencies {
      implementation("com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:0.25.0-beta01")
    }

    Groovy

    dependencies {
      implementation 'com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:0.25.0-beta01'
    }
  3. Klicken Sie auf Jetzt synchronisieren. Weitere Informationen zur Synchronisierung finden Sie unter Projekte mit Gradle-Dateien synchronisieren.

GMA Next-Gen SDK initialisieren

Rufen Sie MobileAds.initialize() auf, um GMA Next-Gen SDK zu initialisieren. Dieser Aufruf muss in einem Hintergrundthread erfolgen. Andernfalls kann ein ANR-Fehler (Application Not Responding) auftreten.

Kotlin

import com.google.android.libraries.ads.mobile.sdk.MobileAds
import com.google.android.libraries.ads.mobile.sdk.initialization.InitializationConfig
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch

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

    val backgroundScope = CoroutineScope(Dispatchers.IO)
    backgroundScope.launch {
      // Initialize GMA Next-Gen SDK on a background thread.
      MobileAds.initialize(
        this@MainActivity,
        // Sample AdMob app ID: ca-app-pub-3940256099942544~3347511713
        InitializationConfig.Builder("SAMPLE_APP_ID").build()
      ) {
        // Adapter initialization is complete.
      }
      // SDK initialization is complete. If you don't want to wait for bidding adapters to finish
      // initializing, start loading ads now.
    }
  }
}

Java

import com.google.android.libraries.ads.mobile.sdk.MobileAds;
import com.google.android.libraries.ads.mobile.sdk.initialization.InitializationConfig;

public class MainActivity extends AppCompatActivity {
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    new Thread(
            () -> {
              // Initialize GMA Next-Gen SDK on a background thread.
              MobileAds.initialize(
                  this,
                  // Sample AdMob app ID: ca-app-pub-3940256099942544~3347511713
                  new InitializationConfig.Builder("SAMPLE_APP_ID")
                      .build(),
                  initializationStatus -> {
                    // Adapter initialization is complete.
                  });
              // SDK initialization is complete. If you don't want to wait for bidding adapters to
              // finish initializing, start loading ads now.
            })
        .start();
  }
}

Diese Methode initialisiert das SDK und ruft einen Abschluss-Listener auf, sobald sowohl GMA Next-Gen SDK als auch die Initialisierung der Adapter abgeschlossen ist oder nach einer Zeitüberschreitung von 30 Sekunden. Dies muss nur einmal erfolgen, idealerweise beim Start der App.

Wenn Sie die AdMob-Vermittlung verwenden, warten Sie, bis der Abschluss-Handler aufgerufen wird, bevor Sie Anzeigen laden. So wird sichergestellt, dass alle Vermittlungsadapter initialisiert werden.

Anzeigen können beim Initialisieren von GMA Next-Gen SDK oder von SDKs von Vermittlungspartnern vorab geladen werden. Wenn Sie die Einwilligung von Nutzern im Europäischen Wirtschaftsraum (EWR) einholen müssen, anfragespezifische Flags festlegen (z. B. RequestConfiguration.TagForChildDirectedTreatment oder RequestConfiguration.TagForUnderAgeOfConsent) oder andere Maßnahmen ergreifen, bevor Sie Anzeigen laden, müssen Sie dies tun, bevor Sie GMA Next-Gen SDKinitialisieren.

Anzeigenformat auswählen

GMA Next-Gen SDK wurde jetzt importiert und Sie können eine Anzeige implementieren. AdMob bietet eine Reihe verschiedener Anzeigenformate, sodass Sie das Format auswählen können, das am besten zur Nutzererfahrung Ihrer App passt.

Banneranzeigenblöcke enthalten rechteckige Werbeanzeigen, die einen Teil der App-Oberfläche einnehmen. Sie können nach einer festgelegten Zeitspanne automatisch aktualisiert werden. Damit sehen Nutzer an derselben Stelle regelmäßig neue Werbung, auch wenn sie nicht zu einem anderen Bereich der App wechseln. Dieses Anzeigenformat ist außerdem am einfachsten zu implementieren.

Banneranzeigen implementieren

Interstitial

Mit Interstitial-Anzeigenblöcken werden ganzseitige Anzeigen in Ihrer App bereitgestellt. Die Anzeigenblöcke sollten an natürlichen Unterbrechungs- oder Übergangspunkten platziert werden, z. B. in einer Gaming-App nach Abschluss eines Levels.

Interstitial-Anzeigen implementieren

Nativ

Bei nativen Anzeigen können Sie die Darstellung von Assets wie Überschriften und Call-to-Action-Elementen in Ihren Apps anpassen. Wenn Sie die Anzeige selbst gestalten, können Sie eine natürliche, unaufdringliche Präsentation erstellen, die zu einer positiven Nutzererfahrung beiträgt.

Native Anzeigen implementieren

Verfügbar

Blöcke für Anzeigen mit Prämie geben Nutzern die Möglichkeit, Spiele zu spielen, an Umfragen teilzunehmen oder sich Videos anzusehen und im Gegenzug In-App-Prämien wie Münzen, Extraleben oder Punkte zu erhalten. Sie können je nach Anzeigenblock verschiedene Prämien festlegen und angeben, welche Prämienwerte oder -artikel die Nutzer erhalten.

Anzeigen mit Prämie implementieren

Interstitial mit Prämie

Interstitials mit Prämie sind ein neues, auf Incentives basierendes Anzeigenformat, das automatisch an natürlichen Übergangspunkten in einer App ausgeliefert wird. Sie können damit Nutzer, die sich die Werbung ansehen, mit Münzen oder Extraleben belohnen.

Anders als bei Anzeigen mit Prämie müssen Nutzer nicht zustimmen, sich Interstitials mit Prämie anzusehen.

Anstatt der Aufforderung zur Zustimmung muss ein Eingangsbildschirm eingeblendet werden, auf dem Nutzer die versprochene Prämie sehen und sich gegen das Ansehen der Anzeige entscheiden können.

Interstitials mit Prämie implementieren

App-Start-Anzeige

App-Start-Anzeigen werden ausgeliefert, wenn Nutzer Ihre App öffnen oder zu ihr zurückkehren. Die Anzeige wird als Overlay über dem Ladebildschirm eingeblendet.

App-Start-Anzeigen implementieren