提问人:RichW 提问时间:5/26/2011 更新时间:7/18/2019 访问量:6149
Android 应用内购买 - RESULT_ITEM_UNAVAILABLE
Android in-app purchase - RESULT_ITEM_UNAVAILABLE
问:
我正在尝试将 Android Market 应用内购买集成到我的应用程序中,但不幸的是,每次尝试购买测试产品时都会遇到一个烦人的错误。
我已经获取了示例应用程序(Dungeons)并将其添加到我的应用程序中。我更新了公钥,并将产品列表更新为以下内容:
/** An array of product list entries for the products that can be purchased. */
private static final CatalogEntry[] CATALOG = new CatalogEntry[] {
new CatalogEntry("lemonstorm.huru.full", "Full v", Managed.MANAGED),
new CatalogEntry("android.test.purchased", "purchased",Managed.UNMANAGED),
new CatalogEntry("android.test.canceled", "cancelled",Managed.UNMANAGED),
new CatalogEntry("android.test.refunded", "Refunded",Managed.UNMANAGED),
new CatalogEntry("android.test.item_unavailable", "unavailable",Managed.UNMANAGED)
};
我使用 Eclipse 导出了应用程序,并将其安装在我的手机上,并将其上传到 Android Market 网站。同样在 Android Market 网站上,我添加了 lemonstorm.huru.full 作为应用内购买并发布了它。
我还将我的 googlemail 帐户添加为测试帐户(即我在手机上登录的帐户)。
当我在手机上运行该应用程序时,每当我尝试购买 lemonstorm.huru.full 时,我都会收到一条RESULT_ITEM_UNAVAILABLE消息,但如果我尝试例如android.test.purchased,它绝对可以正常工作。
RESULT_ITEM_UNAVAILABLE文档说明如下:
表示 Android Market 在应用程序的产品列表中找不到请求的项目。如果产品 ID 在REQUEST_PURCHASE请求中拼写错误,或者某个项目未在应用程序的产品列表中发布,则可能会发生这种情况。
产品 ID 绝对相同,它肯定是发布的,请求必须正常通过,因为它是示例应用程序并且适用于 android.test.purchased
任何想法将不胜感激!
答:
我也有同样的问题。在我发布应用程序后,产品被发现。看起来像 Google 测试帐户中的错误(?
评论
据我所知:
- 版本代码是否与应用程序发布网站中未发布的草稿应用程序相同?
- 您是否触摸了恢复出厂设置以测试帐户?
- 您是否在发布网站中设置了 lemonstorm.huru.full 的托管产品?
评论
我遇到了同样的问题。我正在玩地下城样本,错过了sword_001和potion_001产品必须“发布”。对我来说,问题是他们只是保存了并保持“未发布”。
为了解决这个问题,我刚刚编辑了产品并按下了两者的发布按钮。现在,我可以从示例应用中购买两者。
以下是有关如何测试应用内结算的简要说明,它包括一个图表,用于显示应用已发布与未发布以及使用测试用户、开发人员或其他用户的情况时,您可以从市场应用中看到的内容:
http://developer.android.com/guide/market/billing/billing_testing.html
此外,请记住在导出应用程序时对其进行签名。
我收到了来自 Play 结算库的回复和以下消息:BillingClient.BillingResponse#ITEM_UNAVAILABLE
ProxyBillingActivity:获取购买更新结果,resultCode 为 0,计费的 responseCode:4
事实证明,我忘了访问选择加入链接进行测试(我只将测试人员添加到 alpha 测试人员列表和具有许可证测试访问权限的用户列表中)。
评论