0

上周,我做了一系列的应用内购买测试,一切都很顺利。但是,我在结帐时取消了我的命令,因此,谷歌播放不断向我发送取消通知。

显然 googleplay 不理解我的确认并连续循环通知我。

在 onPurchaseStateChanged 中,在 JSON 解析之后:

ArrayList<String> confirmations = new ArrayList<String>();

for (Trans p : transactions)
{
    [...]
    if (p.purchaseState.ordinal() == PurchaseState.CANCELLED.ordinal())
         confirmations.add(p.notificationId);
}
if (!confirmations.isEmpty())
{
    final String[] notifyIds = confirmations.toArray(new String[confirmations.size()]);
    confirmNotifications(context, notifyIds);
}

.

public static void confirmNotifications(Context context, String[] notifyIds) 
{
    final Intent intent = createIntent(context, Action.CONFIRM_NOTIFICATIONS);
    intent.putExtra(EXTRA_NOTIFY_IDS, notifyIds);
    context.startService(intent);
}

我究竟做错了什么?

4

1 回答 1

0

你想从这里开始什么服务?你自己?最终,您需要绑定到 Market/Play 商店的计费服务并sendBillingRequest()使用正确填充的Bundle. 你的代码会这样做吗?

于 2012-04-25T01:43:01.127 回答