Google InApp Billing Null Exception

Я получаю сообщение об ошибке Null Exception, когда запрашиваю список продуктов для элемента Google InApp Billing.

У меня есть один элемент, добавленный на веб-сайт консоли разработчика в приложении, и он показывает статус «Активно»;

Ниже мой код.

 // Listener that's called when we finish querying the items and subscriptions we own
IabHelper.QueryInventoryFinishedListener mGotInventoryListener = new IabHelper.QueryInventoryFinishedListener() {
    public void onQueryInventoryFinished(IabResult result, Inventory inventory) {
        Log.d(TAG, "Query inventory finished 15.");
        if (result.isFailure()) {
           Log.d(TAG,"Failed to query inventory: " + result);
            return;
        }

        SkuDetails productDetails = inventory.getSkuDetails(SKU_ANATVITALSIGNS);

  //      Log.d(TAG,"Gas Price is: " + productDetails.getPrice());

        if (productDetails != null){
            Log.d(TAG,"Deck price is: " + productDetails.getPrice());
        }else{

            Log.d(TAG,"No Product Detail" );
        }

        Log.d(TAG, "Query inventory was successful.");

//        updateUi();
//        setWaitScreen(false);
        Log.d(TAG, "Initial inventory query finished; enabling main UI.");
    }

Ошибка программы, когда я пытаюсь, например, получить "productDetails.getPrice()".

Любая помощь приветствуется. Это была двухдневная головная боль.

ТИА


person Trey Balut    schedule 15.03.2013    source источник
comment
Вы что-то изменили в реализации SkeuDetails по умолчанию? getPrice() должен возвращать пустую строку, если цены нет.   -  person AlexVogel    schedule 15.03.2013
comment
Я проверил, и цена доступна на консоли разработчика. Я получаю ту же ошибку для getType() и getTitle(). Я ничего не менял в реализации SkuDetails по умолчанию.   -  person Trey Balut    schedule 15.03.2013


Ответы (1)


Я не звонил слушателю с правильно отформатированным запросом.

Я добавил приведенный ниже код и передал информацию слушателю, и теперь отображаются сведения о моем продукте.

Ниже приведен код, который я изменил:

String[] moreSkus = {SKU_ANATVITALSIGNS};
mHelper.queryInventoryAsync(true, Arrays.asList(moreSkus), mGotInventoryListener);

Это решило проблему.

person Trey Balut    schedule 16.03.2013