我开发了一款带有IAB的Android应用。它运作良好,直到今天我突然无法再购买任何物品。首先,查询SKUDetails会返回一个空对象:
m_helper.queryInventoryAsync(true,moreSkus,new IabHelper.QueryInventoryFinishedListener() {
@Override
public void onQueryInventoryFinished(IabResult result, Inventory inv) {
SkuDetails details = inv.getSkuDetails(prodId);
}
});
详细信息为空。
其次,如果我忽略此错误并致电:
m_helper.launchPurchaseFlow(m_activity, productId, requestId,new IabHelper.OnIabPurchaseFinishedListener() {
@Override
public void onIabPurchaseFinished(IabResult result, Purchase purchase) {
}
}
onIabPurchaseFinished永远不会被调用,我得到了“”你试图购买的商品无法找到。“
我不知道发生了什么?该应用程序正在运行,我的客户仍然可以购买这些物品。有人可以提供建议吗?
答案 0 :(得分:2)
我今天遇到同样的问题,双重检查一切但仍然出现此错误。让我发疯了。我通过电子邮件向Google支持发送了电子邮件,他们回答说:
感谢您与Google Play开发者支持小组联系,并报告您通过应用内结算获得的行为。
我们最近对我们的系统进行了一些更改,现在我们要求在测试之前发布应用程序。我们目前建议您将APK发布到Alpha频道,以便测试许可,应用内结算和扩展文件。无需在Alpha通道中创建特殊测试组来测试这些功能,但是应用程序必须发布而不是草稿模式。
对于给您带来的不便,我们深表歉意,并正在努力更新我们的文档以反映这些变化。
我将我的APK发布给Alpha,给了它几个小时,现在可以再次看到我的测试购买。