Funktionen für Prämienprodukte hinzufügen

Eine Methode zur Freischaltung von In-App-Produkten und Vorteilen für Ihre Nutzer besteht darin, Produkte mit Prämie oder Artikel, die Nutzer nach der Wiedergabe eines Videos erhalten Werbung. Wenn du Prämienprodukte anbietest, ermöglichst du Nutzern In-App-Käufe Prämien und Vorteile zu erhalten, ohne direkt etwas kaufen zu müssen.

In diesem Dokument wird erläutert, wie Sie spezielle Funktionen für Anzeigen mit Prämie implementieren. zu verbessern. Der Abschnitt Workflowdiagramm auf dieser Seite das den Prozess veranschaulicht.

Prämienprodukte Ihrer App identifizieren

Prämien haben eine SkuType von INAPP Damit Nutzer mehrere Anzeigen sehen und mehrere Prämien erhalten können, die Produkte konsumiert werden müssen.

Bevor du Nutzern ein Prämienprodukt anbieten kannst, musst du das SkuDetails für den Produkt. Rufen Sie dazu querySkuDetailsAsync() mit SkuType.INAPP als Produkttyp.

Altersgerechte Anzeigen deklarieren

Um die Einhaltung rechtlicher Verpflichtungen in Bezug auf Kinder und Minderjährige Nutzer, einschließlich des US-Gesetzes zum Schutz der Privatsphäre von Kindern im Internet (Children's Online Privacy Protection Act, COPPA) (COPPA) und die EU-Datenschutz-Grundverordnung (DSGVO) In Ihrer App sollte deklariert werden, welche Anzeigen in den USA als auf Kinder ausgerichtet behandelt werden sollen. und welche Anzeigen sich an Nutzer richten, die das geltende Mindestalter noch nicht erreicht haben sein Land. Das AdMob-Team in der Sie erfahren, wann Sie Ihre Anzeigenanfragen mit dem Tag Für Kinder Behandlung und wann Sie sie mit Tags für Inhalte für minderjährige Nutzer und der Behandlungsmethoden Auswirkungen darauf.

Überlegen Sie beim Erstellen des Abrechnungsclients für Ihre App, ob Anfragen als auf Kinder ausgerichtet behandelt werden sollen für Nutzer, die das gültige Mindestalter noch nicht erreicht haben. Wenn die Anzeigenanfragen diese bestehenden Einschränkungen, rufen Sie die setChildDirected() und setUnderAgeOfConsent() und die entsprechenden Werte an jede Methode übergeben.

Das folgende Code-Snippet zeigt, wie Videoanzeigen die für Kinder oder minderjährige Nutzer geeignet sind:

Kotlin

val billingClient = BillingClient.newBuilder(context)
        .setListener(this)
        .setChildDirected(ChildDirected.CHILD_DIRECTED)
        .setUnderAgeOfConsent(UnderAgeOfConsent.UNDER_AGE_OF_CONSENT)
        .build()

Java

BillingClient billingClient =
    BillingClient.newBuilder(context)
        .setListener(this)
        .setChildDirected(ChildDirected.CHILD_DIRECTED)
        .setUnderAgeOfConsent(UnderAgeOfConsent.UNDER_AGE_OF_CONSENT)
        .build();

Videoanzeigen laden

Bevor dem Nutzer die Option angezeigt wird, eine Videoanzeige anzusehen, um ein müssen Sie das Video laden. Erstellen Sie dazu RewardLoadParams-Objekt, wobei es mit dem SkuDetails-Objekt verknüpft wird, das für das Prämienprodukt steht. Rufen Sie dann die loadRewardedSku() und übergeben Sie das RewardLoadParams-Objekt sowie einen RewardResponseListener -Objekt enthält.

Der RewardResponseListener-Listener wird benachrichtigt, wenn das Video zu Ende ist. wird geladen. Der Hörer wird auch benachrichtigt, wenn das Video nicht verfügbar ist z. B. eine Zeitüberschreitung des Servers, auftritt.

Um die Geräteleistung beim Laden der mit deinem App-Prämien erhalten, beachten Sie die folgenden Best Practices:

  • Laden Sie maximal drei Artikelnummern mit Prämie gleichzeitig.
  • Versuchen Sie, die Videos jedes Mal zu laden, wenn der Nutzer Ihre App aufruft. Dieser Schritt hilft Ihnen, prüfen Sie, ob die Videos noch geladen und verfügbar sind.
  • Beim Laden der Videos ist es wichtig, ein ausgewogenes Verhältnis zwischen der Bandbreite zu wählen. und die Reaktionsfähigkeit der App, die für Ihren Anwendungsfall am besten geeignet ist:

    • Laden Sie die Videos frühestens nach dem Aufruf von getSkuDetails() für die verknüpftes Prämienprodukt. Ihre App ist weiterhin sehr reaktionsschnell, durch das Laden von Videos verschwendet wird, die sich der Nutzer nie ansieht.
    • Laden Sie das Video spätestens dann, wenn der Nutzer zu der Seite navigiert, auf der der Video angezeigt werden soll. Ihre Anwendung verschwendet in diesem Fall selten Bandbreite, aber muss der Nutzer möglicherweise einen Moment warten, bis die Schaltfläche Video angeklickt werden kann.

Im folgenden Code-Snippet sehen Sie, wie eine Videoanzeige geladen wird, wird abgespielt, bevor der Nutzer das Prämienprodukt erhält:

Kotlin

if (skuDetails.isRewarded()) {
    val params = RewardLoadParams.Builder()
            .setSkuDetails(skuDetails)
            .build()
    mBillingClient.loadRewardedSku(params.build(),
            object : RewardResponseListener {
        override fun onRewardResponse(@BillingResponse responseCode : Int) {
            if (responseCode == BillingResponse.OK) {
                // Enable the reward product, or make
                // any necessary updates to the UI.
            }
        }
    })
}

Java

if (skuDetails.isRewarded()) {
    RewardLoadParams.Builder params = RewardLoadParams.newBuilder();
    params.setSkuDetails(skuDetails);
    mBillingClient.loadRewardedSku(params.build(),
        new RewardResponseListener() {
            @Override
            public void onRewardResponse(int responseCode) {
                if (responseCode == BillingResponse.OK) {
                      // Enable the reward product, or make
                      // any necessary updates to the UI.
                  }
            }
        });
}

Nutzern Käufe mit Prämie anbieten

Wenn die Google Play Billing Library das mit ein Prämienprodukt, d. h. wenn RewardResponseListener ein responseCode von BillingResponse.OK — ich den Abrechnungsablauf starten können.

Sie beginnen mit der Wiedergabe von Anzeigen für ein Prämienprodukt, indem Sie folgenden Link aufrufen: launchBillingFlow(), wie bei allen anderen Arten von In-App- . Auch wenn die Nutzer keinen direkten Kauf tätigt, um ein Prämienprodukt zu erhalten, den Abrechnungsablauf aktivieren müssen, damit der Nutzer die Produkt.

Kauf fortführen

Ihren Rechnungsempfänger darüber informieren, dass ein Nutzer eine Prämie erhalten und genutzt hat Produkt, verantwortung in Ihrem Google Ads-Konto Abrechnungsclient-Listener onPurchasesUpdated() . Beachten Sie, dass Sie nur Käufe mit Prämie konsumieren müssen.

Prämienprodukte testen

Wenn Sie testen möchten, wie Ihre App Videoanzeigen lädt und Nutzern Prämienprodukte zur Verfügung stellt, Sie nutzen lizenzierte Tester, die standardmäßig Testanzeigen und keine echten Testanzeigen erhalten. zu erhalten. Informationen zum Einrichten von Konten für diese Tester finden Sie unter Nutzertests für Play Billing App

Eine andere Testmethode ist die Verwendung des android.test.reward-Produkts ID. Dieses Produkt ist in Google Play Billing ein reservierter Name. Du kannst nicht Ihrer Liste der In-App-Produkte in der Play Console hinzufügen.

Achtung : Verwenden Sie beim Testen der Prämienprodukte Ihrer App keine tatsächlichen Produkten Andernfalls wird Ihr Konto möglicherweise als Spam oder betrügerisches Konto.

Nach dem Testen sollten Sie jedoch darauf achten, android.test.reward durch die Produkt-IDs der tatsächlichen Prämie bevor Sie Ihre Produktionsanwendung für Endnutzer bereitstellen.

Diagramm des Workflows für Prämienprodukte

Das folgende Sequenzdiagramm zeigt, wie der Nutzer, Ihre App und der Google Play Billing Library gemeinsam eine Videoanzeige schalten und dem Nutzerzugriff auf ein Prämienprodukt:

<ph type="x-smartling-placeholder">
</ph> Sequenzdiagramm, das das Protokoll für Prämienprodukte zeigt
Abbildung 1: Schritte zum Kauf eines Prämienprodukts mit Google Play Billing