Google Play In-App Achat retourne le code d'erreur -1008: null puchaseData ou dataSignature
Je tente de mettre en œuvre Google Play in-app achat v3, après avoir réussi à le mettre en œuvre dans v2. Cependant, chaque fois que je tente d'acheter l'un de mes réels dans l'application des produits, je reçois le suivi ci-erreur:
IAB retourné null purchaseData ou dataSignature (réponse -1008:erreur Inconnue)
Ce qui est à venir à partir de la IabHelper.java de la classe, à la ligne 452:
if (purchaseData == null || dataSignature == null) {
logError("BUG: either purchaseData or dataSignature is null.");
logDebug("Extras: " + data.getExtras().toString());
result = new IabResult(IABHELPER_UNKNOWN_ERROR, "IAB returned null purchaseData or dataSignature");
if (mPurchaseListener != null) mPurchaseListener.onIabPurchaseFinished(result, null);
return true;
}
J'ai vérifié que mon application est signé, b) la version de mon application correspond à la version du projet # sur le Google Play store, et c) l'utilisateur de tenter l'achat a été ajouté comme un utilisateur de test. J'ai essayé sur 3 comptes de test et 4 achat dans l'application, les types d'abonnement.
- Devrais-je être préoccupé par ce code d'erreur?
- Est-ce un problème limités à la non-production de rejets?
- Cela affecte mes clients dans le domaine si/quand j'ai communiqué cette version?
- Pouvez-vous vraiment que le test in-app d'achat de bout en bout, une fois que vous avez réellement publié en live avec IAB version 3? Je me rends compte que je peux utiliser le android.test.acheté le type d'article, et j'ai (ça fonctionne), mais je ne considère pas que bout-à-bout d'essai.
Vous devez vous connecter pour publier un commentaire.
J'ai eu ce problème moi-même. Après un moment, j'ai trouvé ce que j'ai fait de mal. J'ai été l'appel de la méthode incorrecte sur le IABHelper.
Si vous appelez
mHelper.launchPurchaseFlow(...)
avec un SKU qui est enregistré comme un abonnement sur Google Developer Console il va entraîner dans l'erreur:L'IAB a retourné null purchaseData ou dataSignature (réponse -1008:erreur Inconnue).
Si vous avez un article qui est inscrit comme un abonnement, vous devez utiliser la méthode:
mHelper.launchSubscriptionPurchaseFlow(...)
à la place.Espère que cette aide.
si vous obtenez l'erreur ci-dessus lorsque vous utilisez launchPurchaseFlow() la méthode et obtenir cette erreur, vérifiez votre type de produit. j'ai été créée abonnement, mais j'avais besoin de produits gérés par exemple la Non-consommable type de produit. Je veux dire être soigneusement à propos de l'achat ou de souscriptions
Pour Cordova et Hybride applications dont vous avez besoin pour utiliser
this.iap.subscribe(this.productId)
méthode d'abonnementInAppPurchase
.Suivantes sont le code fonctionne très bien pour moi: