Autore Topic: In-App Billing verifica dei contenuti acquistati  (Letto 125 volte)

Offline swet90

  • Nuovo arrivato
  • *
  • Post: 21
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Nexus
  • Play Store ID:
    Davide Antonelli
  • Sistema operativo:
    Windows 8
In-App Billing verifica dei contenuti acquistati
« il: 03 Novembre 2017, 17:33:24 CET »
0
Salve ragazzi, sto aggiornando la mia app per inserire i contenuti In-App Billing.

premetto che ho seguito questo tutorial :

http://www.techotopia.com/index.php/An_Android_Studio_Google_Play_In-app_Billing_Tutorial

ma di volta in volta mi sono documentato su https://developer.android.com/google/play/billing/billing_integrate.html

L'acquisto FAKE funziona bene, mi chiedevo però, in che modo verificare all'avvio dell'app , quali sku ha acquistato l' utente, scaricando il tutorial TrivialDrive, ho notato che nella onCreate della main activity inserisce:

Codice (Java): [Seleziona]
try {
                                               mHelper.queryInventoryAsync(mReceivedInventoryListener);
                                           } catch (IabAsyncInProgressException e) {

                                           }

Appena si avvia l'app, crasha e mi riporta  :

Codice (Java): [Seleziona]
E/AndroidRuntime: FATAL EXCEPTION: Thread-6
                  Process: davide.com.beercalculator, PID: 21084
                  java.lang.NullPointerException: Attempt to read from field 'java.lang.String davide.com.beercalculator.util.Purchase.mItemType' on a null object reference
                      at davide.com.beercalculator.util.IabHelper.consume(IabHelper.java:737)
                      at davide.com.beercalculator.util.IabHelper$3.run(IabHelper.java:1078)
                      at java.lang.Thread.run(Thread.java:761)

la riga 737 di IabHelper é la seguente:

Codice (Java): [Seleziona]
if (!itemInfo.mItemType.equals(ITEM_TYPE_INAPP)) {
            throw new IabException(IABHELPER_INVALID_CONSUMPTION,
                    "Items of type '" + itemInfo.mItemType + "' can't be consumed.");
        }
Non riesco a capire per quale motivo si blocca.

Sapete aiutarmi?

Offline Ohmnibus

  • Utente senior
  • ****
  • Post: 769
  • Respect: +161
    • Github
    • Google+
    • @ohmnibus
    • Mostra profilo
    • Lords of Knowledge GdR
  • Dispositivo Android:
    Huawei P9 Lite
  • Play Store ID:
    Ohmnibus
  • Sistema operativo:
    Windows 7 x64
Re:In-App Billing verifica dei contenuti acquistati
« Risposta #1 il: 06 Novembre 2017, 16:23:25 CET »
0
itemInfo è null e la riga che solleva l'eccezione è

Codice (Java): [Seleziona]
if (!itemInfo.mItemType.equals(ITEM_TYPE_INAPP)) {
Sul perché sia null non ho idea, dipende dal resto del codice.
Ohmnibus
Le mie app su Play Store

È stata trovata una soluzione al tuo problema? Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato.