In diesem Dokument wird beschrieben, wie Sie Ihre App in die Funktion für mehrere Produkte der Play Billing Library (PBL) einbinden können.
Mit der Funktion für mehrere Einmalkaufprodukte können Sie mehrere Einmalkaufprodukte zu einer Einheit zusammenfassen. Diese gebündelten Produkte können dann gemeinsam gekauft, abgerechnet und verwaltet werden. Sie können auch Rabattangebote für diese gebündelten Einmalkaufprodukte erstellen, um Produktkäufe zu fördern.
Wissenswertes
Beachten Sie beim Erstellen von Einmalkaufproduktpaketen Folgendes:
- Einmalkaufproduktpakete können keine Abos enthalten.
- In einem Einmalkaufproduktpaket können nicht sowohl digitale Inhalte als auch Dienste enthalten sein.
- Die gebündelten Einmalkaufprodukte müssen sofort heruntergeladen werden können. Ein Einmalkaufproduktpaket kann beispielsweise keine Vorbestellung enthalten, da es nicht sofort heruntergeladen werden kann.
- Die Funktion für mehrere Einmalkaufprodukte unterstützt die Kaufoption „Mieten“ nicht.
In die Play Billing Library einbinden
In diesem Abschnitt wird davon ausgegangen, dass Sie mit den ersten Schritten zur PBL-Einbindung vertraut sind, z. B. dem Hinzufügen der PBL-Abhängigkeit zu Ihrer App, dem Initialisieren von BillingClient und dem Herstellen einer Verbindung zu Google Play. In diesem Abschnitt werden die PBL-Einbindungsaspekte behandelt, die speziell für den Kauf von mehreren Einmalkaufprodukten gelten.
Kaufvorgang starten
So starten Sie einen Kaufvorgang für mehrere Einmalkaufprodukte:
Erstellen Sie mit der QueryProductDetailsParams.Builder.setProductList Methode eine Produktliste mit allen Einmalkaufprodukten.
Rufen Sie alle Ihre Einmalkaufprodukte mit der
BillingClient.queryProductDetailsAsyncMethode ab.Im folgenden Beispiel wird gezeigt, wie Sie alle Ihre Einmalkaufprodukte abrufen:
Java
billingClient.queryProductDetailsAsync( queryProductDetailsParams, new ProductDetailsResponseListener() { public void onProductDetailsResponse( BillingResult billingResult, QueryProductDetailsResult productDetailsResult) { // check billingResult // … // process productDetailsList returned by QueryProductDetailsResult ImmutableList
productDetailsList = productDetailsResult.getProductDetailsList(); for (ProductDetails productDetails : productDetailsList) { for (OneTimePurchaseOfferDetails oneTimePurchaseOfferDetails : productDetails.getOneTimePurchaseOfferDetailsList()) { // … } } } }); Legen Sie das
ProductDetails-Objekt für jedes Einmalkaufprodukt fest.Geben Sie die Produktdetails des Einmalkaufprodukts in der
BillingFlowParams.Builder.setProductDetailsParamsListMethode an. Die KlasseBillingFlowParamsgibt die Details eines Kaufvorgangs an.Im folgenden Beispiel wird gezeigt, wie Sie den Abrechnungsvorgang für den Kauf von mehreren Einmalkaufprodukten starten:
Java
BillingClient billingClient = BillingClient.newBuilder() // set other options .build(); // ProductDetails obtained from queryProductDetailsAsync(). ProductDetails productDetails1 = ...; ProductDetails productDetails2 = ...; ArrayList
productDetailsList = new ArrayList<>(); productDetailsList.add(productDetails1); productDetailsList.add(productDetails2); BillingFlowParams billingFlowParams = BillingFlowParams.newBuilder() .setProductDetailsParamsList(productDetailsList) .build(); billingClient.launchBillingFlow(billingFlowParams);
Käufe verarbeiten
Die Verarbeitung von Käufen von mehreren Einmalkaufprodukten ist dieselbe wie bei bestehenden Käufen einzelner Artikel, wie unter Google Play Billing Library in Ihre App einbinden beschrieben. Der einzige Unterschied besteht darin, dass Sie für alle Produkte eine Berechtigung gewähren müssen, anstatt nur für eines. So kann der Nutzer mit einem einzigen Kauf mehrere Berechtigungen erhalten.
Beim Kauf von mehreren Einmalkaufprodukten werden mehrere Artikel zurückgegeben, die
mit Purchase.getProducts() in der Google
Play Billing Library und dann mit der Liste lineItems in
purchases.products.get der Google Play Developer API abgerufen werden können.
Entwicklerbenachrichtigungen in Echtzeit
Das Feld sku wird in Entwicklerbenachrichtigungen in Echtzeit für Käufe von mehreren Einmalkaufprodukten nicht angegeben.
Käufe von mehreren Einmalkaufprodukten umfassen mehr als ein Produkt. Daher können Sie die Play Developer APIs verwenden, um die Kaufdaten abzurufen und alle Artikel darin zu sehen.
Erstattungen
Bei einem Kauf von mehreren Einmalkaufprodukten können Nutzer keine Erstattungen für einzelne Artikel beantragen und Sie können auch keine Erstattungen für einzelne Artikel veranlassen. Es ist jedoch zulässig, Erstattungen für den gesamten Kauf von mehreren Einmalkaufprodukten zu beantragen und zu veranlassen. Wenn Sie einen Kauf von mehreren Einmalkaufprodukten für einen Nutzer stornieren, werden alle mit dem Kauf verknüpften Berechtigungen storniert.
Finanzberichte und ‑abgleich
Verwenden Sie die Abrechnung, um Ihre aktiven Käufe von mehreren Einmalkaufprodukten mit Google-Auszahlungen und ‑Transaktionen bei Google Play abzugleichen. Jede Transaktionszeile hat eine Bestell-ID. Bei einem Kauf von mehreren Einmalkaufprodukten enthalten die Berichte „Einnahmen“ und „Geschätzte Verkäufe“ separate Zeilen (mit derselben Bestell-ID) für jede Transaktion, z. B. Belastung, Gebühr, Steuer und Erstattung, für jeden beteiligten Artikel.
Für Dashboards in der Play Console gilt Folgendes:
Die Umsatzstatistiken im Bereich Finanzberichte der Console sind nach einzelnen Produkten aufgeschlüsselt.
Die Bestellverwaltung berücksichtigt Käufe von mehreren Einmalkaufprodukten und zeigt detaillierte Listen der gekauften Artikel. Über die Bestellverwaltung können Sie den Kauf eines Nutzers widerrufen, stornieren oder vollständig erstatten.