在IInAppBillingService方法中放置奖励的地方?

时间:2016-07-29 18:29:00

标签: android sharedpreferences

我有IInAppBillingService的这种方法:

                if (sku.equals(inappid)) {
                    Bundle buyIntentBundle = mservice.getBuyIntent(3, getPackageName(), sku, "inapp",
                            "bGoa+V7g/yqDXvKRqq+JTFn4uQZbPiQJo4pf9RzJ");
                    if (buyIntentBundle.getInt("RESPONSE_CODE") == 0) {
                        PendingIntent pendingIntent = buyIntentBundle.getParcelable("BUY_INTENT");
                        startIntentSenderForResult(pendingIntent.getIntentSender(), 1001, new Intent(),
                                Integer.valueOf(0), Integer.valueOf(0), Integer.valueOf(0));

                        * long starsLong = Menu.sharedPref.getLong("stars", 0L);
                        SharedPreferences.Editor editor = Menu.sharedPref.edit();
                        editor.putLong("stars", starsLong + stele);
                        editor.commit(); *
                    } 
                }

但即使用户取消付款,奖励也会叠加在 sharedPreferences 中。我应该把STARS的部分用于奖励,只有当用户支付时(我应该采用哪种方法或什么条件)?

谢谢!

1 个答案:

答案 0 :(得分:0)

我找到了。它是Activity类中的 onActivityResult 方法。在这里你可以设置条件if(resultCode == RESULT_OK),只有当用户为你的物品付款时才会调用它。