Android应用内结算,缺少购买

我的 Android应用程序正在使用Google的应用内结算.

我使用了Google的IabHelper课程,因为他们的计费似乎非常复杂.

我的问题是我想知道购买是否成功.我认为我正在正确地跟踪该过程,但在我的日志中,我看到很多用户进行升级,但是我的Google Play付款帐户中的购买从未出现过. (即免费升级).

我正在记录GP订单ids,有时它的数字,

GPA.1234-5678-9123-1234

但有时它的样子,

1234567891234.1234567891234

通常我认为它的非GPA订单不收取费用.

另外我想你可以通过订单,然后取消它,还是得到升级

你如何确保用户真正付款?

码:

IabHelper.OnIabPurchaseFinishedListener mpurchaseFinishedListener = new IabHelper.OnIabPurchaseFinishedListener() {
    public void onIabPurchaseFinished(IabResult result,final Purchase purchase) {
        if (result.isFailure()) {
            showMessage("Google Billing Purchase Error");                   
            return;
        } else if (purchase.getSku().equals(sku)) {
            IabHelper.QueryInventoryFinishedListener mReceivedInventoryListener = new IabHelper.QueryInventoryFinishedListener() {
                public void onQueryInventoryFinished(IabResult result,Inventory inventory) {
                    if (result.isFailure()) {
                        showMessage("Google Billing Error");
                        return;
                    } else {
                        if (inventory.hasPurchase(sku)) {
                            showMessage("Thank you for upgrading");
                            grantUpgrade();
                            // ** This line gets call,but no payment occurs.
                        }
                    }
                }
            };
            mHelper.queryInventoryAsync(mReceivedInventoryListener);
        }
    }
};
mHelper.launchPurchaseFlow(this,sku,10001,mpurchaseFinishedListener,"");

***更新以检查“inventory.hasPurchase(sku)”,但仍然看到获得升级但不支付的用户.

**也许用户正在使用Freedom hack?反正要防止这个?

解决方法

if (result.isFailure()) {
    //If the user aborts or any other problems it will jump here 
  }
  else {
    //The user purchased some item,check out which it is 
    mIsPremium = inventory.hasPurchase(SKU_ANY_ITEM);        
  }

所以关于你的问题,这段代码已经验证用户是否真的购买了这个项目!

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...