112 votes

onIabPurchaseFinished jamais appelé.

J'ai essayé de le configurer dans l'application de facturation pour ma première application, et ont été à l'aide de l'android.test.achetés à l'unité. L'achat de venir à travers, et j'ai réussi à obtenir le numéro d'article dans mon inventaire, mais, comme le dit le titre, onIabPurchaseFinished, n'est jamais appelé.

Je pense qu'il peut avoir quelque chose à voir avec ce Journal: "impossible d'enregistrer la vue qui a le focus puisque le point de vue ciblé com.android.interne.politique.impl.PhoneWindow$DecorView@406743d0 a pas d'identité". Pop-up, juste avant d'aller de Google Play. Je ne suis pas vraiment sûr de ce que cela signifie que...

Le lancement d'achat:

mHelper.launchPurchaseFlow(this, sku, 10001, mPurchaseFinishedListener, "");

Et l'Auditeur:

IabHelper.OnIabPurchaseFinishedListener mPurchaseFinishedListener = new IabHelper.OnIabPurchaseFinishedListener() {

    @Override
    public void onIabPurchaseFinished(IabResult result, Purchase info) {
        System.out.println("Purchase Finish heard something");

        if (result.isFailure()) {
             Log.d(TAG, "Error purchasing: " + result);
             return;
        } else{
                Log.d(TAG,"Success!");
             }


    }
};

206voto

user244190 Points 2198

Essayez d’ajouter ceci :

8voto

drwuro Points 1

je viens de découvrir une autre chose importante: le requestCode qui est utilisé pour lancer l'achat de flux doit être >= 0!

j'ai utilisé new Random().nextInt()" à la génération aléatoire requestCode, et parfois ça marche, parfois ça ne l'est pas. maintenant, j'ai trouvé dans la documentation suivante, que le requestCode ne doit pas être un nombre négatif:

http://developer.android.com/reference/android/app/Activity.html#startActivityForResult%28android.content.Intent,%20int%29

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X