如何检查是否已购买应用程序 - CodenameOne

时间:2014-04-18 17:09:15

标签: codenameone

我的应用程序可以购买我在Google开发者帐户中配置的应用内商品。

该产品是一次性买入产品。我想知道如何检查这个项目是否已经被买(在codenameone中)并根据查询结果处理它。

以下是代码提取:

if(p.isManagedPaymentSupported()) {
        if(p.wasPurchased(id)){
            boolUpdate = true;
            Form f = (Form)createContainer(resPath,"Search");
            beforeSearch(f);
            f.show();
        }else{
            Display.getInstance().callSerially(new Runnable() {
            public void run() {
                   Boolean confirmAction = Dialog.show("Buy Product?","","Yes","No");
                   if(confirmAction){
                       p.purchase(id);
                   }
                }
            });
        }
    }

根据codenameone API doc,“p.wasPurchased(id)”方法应该提供此功能。但在我的设备上安装并进行购买后情况并非如此。即使在购买产品后,付款流程也会再次开始。意思是“wasPurchased()”检查返回false。

我想检查商品是否已经购买,并根据该商品转到下一个屏幕,或者开始购买流程。请问我如何在codenameone上实现这个?

由于

1 个答案:

答案 0 :(得分:1)

Android目前管理的购买不受支持,我认为这是您所指的平台?

有一个RFE和一些代码可以解决它,但在撰写本文时我们没有解决这个问题:http://code.google.com/p/codenameone/issues/detail?id=731