Auf dieser Seite

Demo zu In-App-Käufen – Android-Klassen

Die folgenden Android-Klassen sind Teil der Demo zu In-App-Käufen:

Klassen

AndroidInAppProductEin im Store registriertes Produkt.
AndroidInAppTransactionEnthält Informationen zu einer Transaktion im externen App-Store.
AndroidInAppPurchaseBackendKommuniziert mit dem externen Store.
androidjni.cpp und InAppPurchase.javaKommunikation zwischen dem Abrechnungssystem von Google Play und C++.

Sehen Sie sich die Demo zu In-App-Käufen an – Basisklassen

AndroidInAppProduct

AndroidInAppProduct fügt die Methode „purchase()“ zur Initialisierung des Kaufvorgangs hinzu.

AndroidInAppTransaction

„AndroidInAppTransaction“ wird im „AndroidInAppPurchaseBackend“ mithilfe von „purchaseSucceeded()“, „purchaseFailed()“ und „checkFinalizationStatus()“ erstellt.

„AndroidInAppTransaction“ fügt neue Parameter und Rückgabetypen hinzu. Die Klasse verfügt über die Funktion „finalize()“, die „Consumable“- und „Unlockable“-Produkte trennt, damit sie in der Datei „InAppPurchase.java“ entweder bestätigt oder verbraucht werden können.

AndroidInAppPurchaseBackend

AndroidInAppPurchaseBackend tätigt und empfängt Aufrufe von InAppPurchase.java. Diese Klasse ist eine der Backend-Komponenten der Anwendung.

Initialisieren

Zeigt die Produktinformationen auf der Store-Seite an.

  1. AndroidInAppPurchaseBackend wird von InAppStore::setupBackend() aufgerufen.
  2. Bei der Initialisierung übergibt AndroidInAppPurchaseBackend im Konstruktor „calls“ den Context und einen Zeiger auf sich selbst an Java und initialisiert anschließend mithilfe der Funktion initialize() die Verbindung zum Google Play Store.
  3. Wenn die Verbindung erfolgreich hergestellt wurde, ruft androidjni die Funktion `registerReady()` auf, die das Signal `ready()` an `InAppStore` sendet und die Funktion `queryProducts()` startet, um die Informationen zu den käuflichen Artikeln abzurufen.
  4. Sobald die Abfrage abgeschlossen ist, wird das Signal `productQueryDone()` ausgesendet, und die Informationen zu den Artikeln werden auf der Store-Seite der Anwendung angezeigt.

Kauf

Wenn auf einem der Produkte auf der Store-Seite der Anwendung getippt wird, wird ein Aufruf über ` AndroidInAppProduct::purchase() ` an die Funktion `purchaseProduct()` weitergeleitet. Diese ruft dann die Java-Methode `launchBillingFlow()` auf, die den Abrechnungsablauf von Google Play für den Nutzer öffnet.

InAppPurchase.java und androidjni.cpp

AndroidInAppPurchaseBackend stellt direkte Aufrufe an InAppPurchase.java und empfängt Java-Aufrufe von androidjni. Die Demo-Anwendung kommuniziert mit der Java-Funktion über QJniObject.

Siehe auch „Integration der Google Play-Abrechnungsbibliothek“, „ QJniObject “ und „ QJniEnvironment “.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.