android - Google InApp Billing 空异常

标签 android in-app-billing google-play-services

当我查询 Google InApp Billing 项目的产品列表时,我收到了 Null Exception 错误。

我已将一项添加到应用程序内开发者控制台网站,它的状态显示为“有效”;

下面是我的代码。

 // 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()”时程序出错。

感谢任何帮助。这是为期两天的头脑 Storm 。

TIA

最佳答案

我没有使用格式正确的查询来调用监听器。

我添加了下面的代码并将信息传递给监听器,我的产品详细信息现在显示出来了。

下面是我修改的代码:

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

这解决了问题。

关于android - Google InApp Billing 空异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15433909/

相关文章:

java - 在运行时在 android 中更改所有屏幕方向

java - 如何在 Android 中使用 JDK 11 HTTP 包

android - 如何在 iOS 和 Android 上使用硬件和服务进行应用内购买

android - 如何在 Google Play 结算中获取我所有应用内商品的 SKU 详细信息

android - Google Play服务在使用cyanogenmod 12的android mobile yu yureka上崩溃

android - 安装Google Play服务时出错,我在做什么错?

一次 Android 2 键

java - 在 Activity 之间导航时如何保留数据而不加载数据

Android 应用内结算最低价格

android - appcompat-v7 :27. 1.1 与播放服务 :11. 0.1 冲突