Demo Android-Klassen

Klassen

AndroidInAppProduktEin im Store registriertes Produkt.
AndroidInAppTransactionEnthält Informationen über eine Transaktion im externen App Store.
AndroidInAppPurchaseBackendKommuniziert mit dem externen Store.
androidjni.cpp und InAppPurchase.javaKommunikation zwischen dem Abrechnungssystem von Google Play und C++.

Schauen Sie sich die Basisklassen an

AndroidInAppProduct

AndroidInAppProduct fügt purchase() für die Initialisierung des Kaufprozesses hinzu.

AndroidInAppTransaction

AndroidInAppTransaction wird im AndroidInAppPurchaseBackend mit purchaseSucceeded(), purchaseFailed() und checkFinalizationStatus() erstellt.

AndroidInAppTransaction fügt neue Parameter und Rückgabetypen hinzu. Die Klasse hat eine finalize()-Funktion, die verbrauchbare und nicht-verschließbare Produkte trennt, die entweder bestätigt oder in InAppPurchase.java verbraucht werden können.

AndroidInAppPurchaseBackend

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

Initialisieren

Zeigt die Produktinformationen auf der Shop-Seite an.

  1. AndroidInAppPurchaseBackend wird von InAppStore::setupBackend() aufgerufen.
  2. Bei der Initialisierung übergibt AndroidInAppPurchaseBackend Context und einen Zeiger auf sich selbst an Java im Konstruktor des Aufrufs und initialisiert dann die Verbindung zum Google Play Store mithilfe der Funktion initialize().
  3. Wenn die Verbindung erfolgreich ist, ruft androidjni registerRedy() auf, das das ready()-Signal an InAppStore sendet und die Funktion queryProducts() startet, um die Informationen über die kaufbaren Artikel zu erhalten.
  4. Wenn die Abfrage abgeschlossen ist, wird das Signal productQueryDone() ausgegeben und die Informationen über den Artikel werden auf der Store-Seite der Anwendung angezeigt.

Einkaufen

Wenn Sie auf eines der Produkte auf der Shop-Seite der Anwendung drücken, wird ein Aufruf über AndroidInAppProduct::purchase() an die Funktion purchaseProduct() geleitet. Diese ruft dann die Java-Methode launchBillingFlow() auf, die den Abrechnungsfluss von Goole Plays für den Benutzer öffnet.

InAppPurchase.java und androidjni.cpp

AndroidInAppPurchaseBackend ruft direkt InAppPurchase.java auf und empfängt Java-Aufrufe von androidjni. Die Demo-Anwendung kommuniziert mit der Java-Funktion über QJniObject.

Siehe auch Integrieren der Google Play Billing Library, QJniObject und QJniEnvironment.

© 2025 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.