Sur cette page

Démonstration des achats intégrés - Cours Android

Les cours Android suivants font partie de la démo sur les achats intégrés:

Classes

AndroidInAppProductUn produit enregistré dans la boutique.
AndroidInAppTransactionContient des informations sur une transaction effectuée dans la boutique d'applications externe.
AndroidInAppPurchaseBackendCommunique avec la boutique externe.
androidjni.cpp et InAppPurchase.javaCommunication entre le système de facturation de Google Play et C++.

Découvrez la démo des achats intégrés : classes de base

AndroidInAppProduct

AndroidInAppProduct ajoute la méthode purchase() pour initialiser le processus d'achat.

AndroidInAppTransaction

La classe AndroidInAppTransaction est créée dans AndroidInAppPurchaseBackend à l'aide des méthodes purchaseSucceeded(), purchaseFailed() et checkFinalizationStatus().

AndroidInAppTransaction ajoute de nouveaux paramètres et types de retour. La classe dispose d’une méthode finalize() qui distingue les produits « consommables » et « débloquables » afin qu’ils soient respectivement validés ou consommés dans le fichier InAppPurchase.java.

AndroidInAppPurchaseBackend

AndroidInAppPurchaseBackend effectue et reçoit des appels depuis InAppPurchase.java. Cette classe est l’un des composants back-end de l’application.

Initialize

Affiche les informations sur les produits sur la page de la boutique.

  1. AndroidInAppPurchaseBackend est appelé depuis InAppStore::setupBackend().
  2. Lors de l’initialisation, AndroidInAppPurchaseBackend transmet le Context et un pointeur vers lui-même au code Java dans le constructeur, puis initialise la connexion à la boutique Google Play à l’aide de la fonction initialize().
  3. Une fois la connexion établie, androidjni appelle la fonction registerReady(), qui émet le signal ready() vers InAppStore et lance la fonction queryProducts() afin de récupérer les informations sur les articles disponibles à l'achat.
  4. Une fois la requête terminée, le signal productQueryDone() est émis et les informations relatives aux articles s'affichent sur la page de la boutique de l'application.

Achat

Lorsque l’utilisateur appuie sur l’un des produits de la page de la boutique de l’application, un appel est acheminé via ` AndroidInAppProduct::purchase() ` vers la fonction `purchaseProduct()`. Celle-ci appelle alors la méthode Java `launchBillingFlow()`, qui ouvre le flux de facturation de Google Play à l’utilisateur.

InAppPurchase.java et androidjni.cpp

AndroidInAppPurchaseBackend effectue des appels directement vers InAppPurchase.java et reçoit des appels Java provenant d'androidjni. L'application de démonstration communique avec la fonction Java via QJniObject.

Voir également Intégrer la bibliothèque de facturation Google Play, QJniObject et 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.