关键词:
【中文标题】您要求的商品无法购买【英文标题】:the item you requested is not available for purchase 【发布时间】:2012-10-18 11:58:41 【问题描述】:我正在尝试将 Android Market 应用内购买集成到我的应用中,但不幸的是,每次我尝试购买真正的应用内产品时都会遇到一个恼人的错误。
我已获取示例应用程序 (Dungeons) 并将其添加到我的应用程序中。我更新了公钥并将产品列表更新为以下内容:
/** 可以购买的产品的产品列表条目数组。 */
private static final CatalogEntry[] CATALOG = new CatalogEntry[]
new CatalogEntry("full", "Full v", Managed.MANAGED),
;
我已经使用 Eclipse 导出了该应用程序,并将其安装在我的手机上,并将其上传到了 Android Market 网站。此外,在 Android Market 网站上,我已将 full 添加为应用内购买并发布。
我还添加了我的 googlemail 帐户作为测试帐户(这是我在手机上登录的帐户)。
当我在手机上运行该应用程序时,每当我尝试购买完整的商品时,我都会收到一条您要求的商品不可购买的 android 消息,但如果我尝试例如 android.test.purchased,它绝对可以正常工作.
您所请求的商品的文档无法购买 android 说明如下:
表示 Android Market 在应用程序的产品列表中找不到请求的项目。如果您的 REQUEST_PURCHASE 请求中的产品 ID 拼写错误,或者某个项目未在应用程序的产品列表中发布,则可能会发生这种情况。
产品 ID 完全一样,已明确发布,请求必须通过,因为它是示例应用程序。
我正在使用相同版本的 apk,并且我还发布了 inapp 产品并激活了 apk。 但我仍然面临同样的问题,请帮助我解决它。
任何想法将不胜感激!
【问题讨论】:
你发布你的产品? 你用于Merchant Account
的谷歌账号与设备账号不同?
确保您在 Play 商店中添加的产品状态显示为“活动”
确保您的测试人员点击了选择加入链接...
【参考方案1】:
我对这个错误的经验是:
确保将签名的 APK 上传到开发者控制台。
确保在您的设备上安装签名的 APK,而不是在调试器中启动应用程序。
确保在您的开发者控制台中创建一个测试帐户。
设置您的测试帐户
-
确保使用您的测试帐户登录您的设备。
在封闭式 Alpha/Beta 测试的情况下,请确保您已将您的测试帐户添加到选定的测试人员组,您可以在管理您的 Alpha/Beta 版本的页面上执行此操作。
如果是封闭式 Alpha/Beta 测试,请确保您的测试帐户已通过特别邀请链接接受参与此应用程序的测试
确保在您的开发者控制台中创建应用内计费,最后从控制台激活该项目!!! (这是完全遵循谷歌教程后得到的)
确保将清单中的 VersionCode 和 VersionName 设置为与开发者控制台中的版本相同(Alpha、Beta 或 Production。Drafts 不再起作用)。 @alexgophermix 答案对我有用。
如果您正在寻找没有实际提款的测试付款,您需要另外将您的测试帐户添加到另一个特殊的帐户列表“具有测试访问权限的 Gmail 帐户”,您可以在游戏帐户设置(不是项目!) .在可以看到项目列表的页面上转到设置,然后在“帐户详细信息”页面(向下滚动,几乎在页面底部),您将找到“具有测试访问权限的 Gmail 帐户”列表。
【讨论】:
永远记得使用签名构建测试应用程序。 +1 确保将清单中的 VersionCode 和 VersionName 设置为与开发者控制台中的版本相同(Alpha、Beta 或 Production。Drafts 不再起作用)。 @alexgophermix 答案对我有用。 +1 此外,请确保您的测试用户已选择加入 Alpha(如果您正在使用该 obv)。将它们添加到许可证测试中是不够的。 打开 Opt-in URL 并使用测试帐户,确保您已批准成为测试人员。 版本代码必须匹配,感谢您的提醒,避免了暂时的恐慌。【参考方案2】:这里有一些事情要检查:
-
您已创建了一个 apk,并且您已将其发布到 Alpha 版或 Beta 版的 GooglePlay 控制面板。
GooglePlay 控制面板中的应用未处于草稿模式,但处于已发布状态(您需要将屏幕左侧带有复选图标的所有小圆圈设为绿色才能发布)。
您设置了另一个测试帐户,而不是“附加”到 GooglePlay 信息中心的那个。为此,您可以创建一个 Google+ 群组,将您的测试帐户添加到该群组,然后在 GooglePlay 信息中心指定 Google+ 群组。
您用于测试购买的 apk 具有 相同的版本代码、版本名称,最重要的是,它与您已在商店中发布。
您等待几个小时后,您才能更改仪表板中的某些内容,以便传播更改。这样做需要几个小时。
确保 sku 值是有效的 sku 值(将其与您在 GP 仪表板中输入的值进行比较)。
您尝试购买已购买的商品。获取购买的物品并将其显示在日志中以查看是否有。如果是这样,请使用该产品或将钱退还到您的测试帐户(您需要等待退款发放。这需要几个小时。)
确保 Inapps 处于活动状态!
6 小时后,最后一部分对我有什么帮助:
-
确保您已使用测试帐户登录到 google(在您的浏览器中)并打开此链接(标有红色)并且您批准成为测试员!!!!
http://i.stack.imgur.com/VSgAV.png
更新
-
如果您使用风味构建针对不同 CPU 的 apk,并且为 arm、armv7 和 x86 构建并将它们全部上传到商店,请记住使用其中一个来测试 inapp .如果您使用包含所有 cpu 库的“通用”构建(基本上是商店中的另一个构建),它将无法正常工作。
【讨论】:
我和你有同样的情况。所有1-8都没有问题,但问题是9。浪费我一整天的时间来找到这个。你是我的救星。 是的,最后一部分是最重要的,似乎谷歌改变了规则,它曾经可以在没有步骤 9 的情况下工作,但是现在,无论是封闭测试版还是公开测试版,你都需要点击链接。谢谢大佬! 我的问题是 4. 安装的 apk 的版本代码与 google play apk 不一样。一旦我制作了相同的版本,它就可以工作了。这个答案很有价值。 我非常讨厌这种“几个小时”的不确定性!在这“几个小时”里,我的老板通常会发疯!顺便说一句,如果您有手动安装的 APK,您根本不会收到任何更新!愚蠢的是,使用自己签名的 APK IAB 不起作用。我想我们需要等待该死的更新发生! 在调试模式下使用你的release key,对于android studio,见***.com/questions/16965058/…【参考方案3】:当产品在 Play 商店中为 Inactive
、Activate
产品时会发生这种情况,它应该可以正常工作。
【讨论】:
从未想过... :D 感谢您节省更多时间! 你说的不活跃是什么意思?开发者应该只使用 APK 的 Alpha 版本。【参考方案4】:这个错误还有一个可能的原因,几乎让我发疯了一整天,直到我发现问题所在:apk版本。如果您使用的本地 apk(正确签名、正确密钥、正确产品 ID)的版本号高于上传到 Play 商店的版本号,您也会收到此错误。
希望这对某人有所帮助
【讨论】:
这并没有提供问题的答案。一旦你有足够的reputation,你就可以comment on any post;相反,provide answers that don't require clarification from the asker。 - From Review 这个答案的信息实际上很好知道,对于像我这样的人来说可能是正确的答案 @tttony 我指出了错误的另一个原因,我没有要求任何澄清。这不是假设或问题,如果您手动安装版本号高于已发布版本号的 APK,则应用内购买将返回此错误。 这是一个非常有用的信息。非常感谢您节省了我这么多时间。竖起大拇指。 你救了我的一天,非常感谢 :)【参考方案5】:当您所做的一切都很完美,您使用了带有正确产品 ID 的签名 APK,但您必须注意您使用的 帐户 可能没有正确的
strong>有效的信用卡详细信息。
因此,无论何时您想购买任何产品,即使使用测试帐户,该帐户也应该有有效的信用详细信息。
【讨论】:
这个答案既真实又难得。因此,非常感谢您加倍努力,而不是添加另一个“激活您的产品”答案。 刚刚也体验过。重新启动时,它可能切换到“添加付款方式”弹出窗口而不是不可用的弹出窗口,但它可能不会。不知道为什么你会得到其中一个。【参考方案6】:也许我做错了,但如果您正在测试的版本在 Play 商店中不是 Alpha、Beta 或 Production 版本,您也会收到此错误。
我经常在测试新版本时(在上传到 Play 商店之前)更新我的 VersionCode 和 VersionName,然后在我去测试 IAB 特定功能时遇到此错误。
【讨论】:
上传到 Play 商店后至少需要 45-90 分钟才能开始工作。【参考方案7】:对于我的情况,需要从 APK 选项卡的 Opt-in URL
获取链接。打开浏览器并使用链接。然后在该页面注册为测试人员。
【讨论】:
这是我在 2021 年的情况 - 即使是开发帐户所有者,我也必须通过该选择加入 URL 加入测试计划,或者购买失败并显示“您请求的项目不可用于购买”【参考方案8】:你必须接受成为测试员
发布管理 -> 应用发布 -> 管理测试人员然后以隐身模式打开此链接(选择加入 URL)以登录测试人员帐户
【讨论】:
我是一名测试人员,我也有同样的问题。【参考方案9】:请检查您是否使用相同的测试帐户邮件ID
【讨论】:
我的设备登录为另一个邮件ID,在我将testaccount邮件ID设置为主ID后,这个问题就解决了。 这并没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方发表评论 - 您可以随时评论自己的帖子,一旦您有足够的reputation,您就可以comment on any post。 当我的设备登录不是测试帐户邮件 id(在开发人员控制台中指定的公钥下的 testaccount 邮件 id)时出现此错误。如果我将 testaccount 邮件 id 设置为我的设备的主要邮件 id 【参考方案10】:最新添加(2016/11):
测试者必须接受测试请求取自链接取自 开发者控制台(部分:APK)
应用必须已发布:可以在 beta/alpha 测试中发布;信息:如果您在开发者控制台中点击“发布”,它将不会发布 生产上的应用程序,除非您将其传播到生产选项卡(在 部分 APK);
【讨论】:
【参考方案11】:在购买应用内订阅时,我将下面列表中的所有内容都放在了正确的位置。
创建签名的 apk 并发布到 alpha 通道
向许可证测试
添加了测试人员电子邮件 ID将测试人员电子邮件 ID 添加到 封闭轨道 alpha 测试
选择加入成为一名测试员
测试 ID 与开发者帐户的 ID 不同
在安卓设备上,不在模拟器上
从 Play 商店下载应用
我仍然收到此错误消息 “找不到您要查找的项目”。
浪费了 2-3 天后,我发现它只有在 Play 商店中设置了某些付款模式 时才有效。
虽然大多数答案都与旧的 IAB 购买有关,但我实施了新的计费客户端 API,它是 -
implementation 'com.android.billingclient:billing:1.0'
,找到解决方案并不容易。
如果某些人的情况相同,添加付款方式可能会帮助您克服此错误。您甚至需要添加一个来测试它,但是,它不会为作为许可证测试人员添加的电子邮件 ID 收费。
【讨论】:
【参考方案12】:如果产品状态为“非活动”,请激活它。 这为我解决了。 当然,Google 需要一段时间来更新
还要确保您的测试邮件已经注册。
【讨论】:
【参考方案13】:就我而言,我必须将我的电子邮件地址添加到以下字段。
【讨论】:
【参考方案14】:“开放式 Alpha 测试”或“开放式 Beta 测试”在尝试了互联网上建议的所有方法后为我解决了这个问题。
转到 Android 开发者控制台 -> 您的应用 -> APK,然后选择使用 Open Alpha/Beta 测试。将提供的链接发送给您自己或测试人员。
只要他们在 Android 设备上使用该帐户登录,就可以对其进行测试。
祝你好运
【讨论】:
【参考方案15】:我遇到了同样的问题,我的解决方案是将您的应用程序的当前版本上传到 Play 商店,如果是用于测试,则将其上传到 Alpha 或 Beta 通道,我已经这样做了错误消失了,定价细节显示正确..
【讨论】:
【参考方案16】:这是我测试 IAP 的经验,与上面的一些答案相关
-
您创建了一个 apk,并将其发布到 Alpha 版或 Beta 版的 GooglePlay 控制面板。
不。我有一个处于内部测试(Alpha 前)的测试应用程序,并且 IAP 运行良好。同样,现在我相信我们大多数人发布 AAB 捆绑包而不是 APK 我认为对于新应用 AAB 可分发是一个要求(可能是这里的一个因素?)。
-
GooglePlay 仪表板中的应用程序未处于草稿模式,而是处于已发布状态(您需要将屏幕左侧带有复选图标的所有小圆圈设为绿色,然后才能发布)。
又不是真的。我正在测试的应用程序的应用程序状态是草稿/内部测试(显示在所有应用程序列表中)。除非“已发布”,否则它的意思是:“发布可供内部测试人员使用。”
-
您设置了另一个测试帐户,然后是“附加”到 GooglePlay 仪表板的那个。为此,您可以创建一个 Google+ 群组,将您的测试帐户添加到该群组并在 GooglePlay 信息中心指定 Google+ 群组。
这可能是正确的。我在新安装的应用程序中恢复购买(如果购买了某些产品,然后该应用程序被卸载并随后重新安装,或者在具有相同 Google 帐户的不同设备上再次安装)和购买它们时遇到了一些问题,直到我开始使用不同的帐户。
-
您用于测试购买的 apk 具有相同的版本代码、版本名称,最重要的是,它使用与您在商店中发布的 apk 相同的密钥库进行签名。
又不是真的。我在商店中的应用程序的版本和内部版本号与我在本地测试的应用程序不同。在我的情况下,对于商店中的应用程序,版本是在构建应用程序时分配的,就在部署之前,并且内部版本号是根据 repo 中的提交数计算的,两者都发生在我使用的 CI 中(Jenkins )。 我在通过 USB 电缆连接到我的开发机器的设备上本地运行的一个,从 IDE(在我的情况下为 IntelliJ)以调试模式运行 - 几乎标准场景显然没有使用与 PlayStore 中相同的密钥进行签名,并且版本和内部版本号都是固定的。 IAP 在本地运行时仍然有效。
-
测试人员必须接受来自开发者控制台链接的测试请求
正确 + 确保如果测试人员在测试设备上拥有多个帐户,则与您应用的“许可测试”部分中声明的电子邮件关联的帐户是活动帐户。
【讨论】:
【参考方案17】:可能有三种可能性:
-
将您在 Google Play 上的 APK 保存为草稿,不要忘记激活它并使用唯一 ID 发布您的产品。
检查您的 ID 是否与 Google Play 上的产品 ID 相同。
或检查项目类型是否相同,例如在 Google Play 和您的代码中进行管理。
如果您正在测试,则无需发布该应用。只需将其保存为草稿即可。然后等待一段时间可能是 2 到 3 小时才能激活此功能。
【讨论】:
以上三个条件都满足,但报同样的错误【参考方案18】:为了解决这个问题,请按照以下步骤操作:
在 Google Play 开发者控制台上创建产品。
保存并将其设置为“活动”。
将 APK 上传到 Google Play。
注意在第 1 步中创建产品 6 小时后,应用内结算可能无法使用。
【讨论】:
【参考方案19】:票数最高的答案几乎涵盖了所有内容,但是如果您像我一样愚蠢,会匆忙完成应用发布流程以继续进行测试 IAP,请务必在您正在测试的国家/地区的 Play 商店中发布应用!在设备上检查这一点的简单方法是在打开测试选择加入 URL 时点击“在 Google Play 上下载”链接。如果您在尝试通过 Google Play 商店打开时收到“未找到项目”错误,那么很可能您的应用尚未在那里发布。我遇到了这个问题,因为我通过 ADB 正确加载了已签名的应用程序,虽然 IAP 会显示在构建中,但当您尝试购买它们时会出现此错误。
【讨论】:
“找不到您尝试购买的商品” Android 应用内计费
】“找不到您尝试购买的商品”Android应用内计费【英文标题】:“Theitemyouwereattemptingtopurchasecouldnotbefound”Androidin-appbilling【发布时间】:2014-07-1801:32:57【问题描述】:我在测试我的应用时收到此错误。应用已签名并上传到开发... 查看详情
兑换我的促销代码时出现此错误:“您尝试购买的商品不再可用”
】兑换我的促销代码时出现此错误:“您尝试购买的商品不再可用”【英文标题】:Igetthiserror:"Theitemyoutrytobuyisnolongeravailable"whenredeemingmypromo-codes【发布时间】:2015-03-0314:04:04【问题描述】:我在iTunes中有一个应用程序连... 查看详情
简单购物车
要求:1、启动程序后,让用户输入工资,然后打印商品列表2、允许用户根据商品编号购买商品3、用户选择商品后,检测余额是否够,够就直接扣款,不够提示余额不足。4、可随时退出,退出时,打印已购买商品和余额。#_*_codi... 查看详情
无法为亚马逊应用内购买请求商品数据
】无法为亚马逊应用内购买请求商品数据【英文标题】:UnabletorequestitemdataforAmazonin-apppurchasing【发布时间】:2012-05-2803:28:52【问题描述】:我正在尝试为AmazonAppStore设置应用内购买,但在尝试请求商品数据时遇到了问题。我在Kind... 查看详情
购物程序
要求:启动程序后,让用户输入工资,然后打印出带有序号的商品列表用户输入商品序号购买相应的商品,或者输入‘q‘退出购买界面选择商品后,检查余额是否足够,够则直接扣款,不够则提示余额不足用户每购买一件商品... 查看详情
c++实现:编写商品销售统计程序。
...称,3)计量单位(重量或件),4)单价,5)库存数量。要求:所有商品的信息事先已存入文件中,运行后使得屏幕上显示文件中所存有的所有商品的所有信息。同时,可适当对文件中的商品的各个信息进行修改,或是删除商品... 查看详情
您要求的商品在任何商店都没有[关闭]
】您要求的商品在任何商店都没有[关闭]【英文标题】:Theitemyouhaverequestedisnotavailableinanystore[closed]【发布时间】:2013-07-3005:19:44【问题描述】:今天的问候。我可以在Appstore上打开我的应用程序。通过应用商店,我还可以在iTunes... 查看详情
买3送1的公式
...】:我正在尝试编写PL/SQL来计算如果您购买了一定数量的商品需要支付多少费用。如果您购买3件商品,您将免费获得1件。因此,每购买4件商品,其中一件是免费的。这意味着如果“购买”了4件商品,我将支付3件商品。如果达... 查看详情
折扣与购买的商品数量成正比
】折扣与购买的商品数量成正比【英文标题】:discountproportionaltothenumberofitemsbought【发布时间】:2015-08-0418:13:19【问题描述】:我正在创建一个提供10次应用内购买的游戏。我想知道,如果一起购买3个产品,是否可以为应用内购... 查看详情
#输出商品列表,用户输入序号,显示用户选中的商品
...; 商品li=["手机","电脑",‘鼠标垫‘,‘游艇‘]4#"""功能要求:5#要求用户输入总资产,例如:20006#显示商品列表,让用户根据序号选择商品,加入购物车7#购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功... 查看详情
适用于 iOS 的 PayPal SDK:恢复购买的商品
】适用于iOS的PayPalSDK:恢复购买的商品【英文标题】:PayPalSDKforiOS:Restorepurchaseditems【发布时间】:2013-03-0110:30:29【问题描述】:有人使用过适用于iOS的PayPalSDK(Link)吗?我已经在一个应用程序上成功实现了它。我的问题是,对于... 查看详情
Firebase:您请求的项目无法购买
】Firebase:您请求的项目无法购买【英文标题】:Firebase:Theitemyourequestedisnotavailableforpurchase【发布时间】:2021-04-1715:40:54【问题描述】:所以我知道这个问题已经被问过很多次了,但是它们都是基于来自GooglePlay控制台的测试版部... 查看详情
现有一个商店的数据库,记录顾客及其购物情况,根据要求解答问题
题目:现有一个商店的数据库,记录顾客及其购物情况,由下面三个表组成:商品product(商品号productid,商品名productname,单价unitprice,商品类别category,供应商provider);顾客customer(顾客号customerid,姓名name,住址location);... 查看详情
PayPal沙盒“抱歉,我们目前无法完成您的购买”
】PayPal沙盒“抱歉,我们目前无法完成您的购买”【英文标题】:PayPalSandbox"Sorry,wecan’tcompleteyourpurchaseatthistime"【发布时间】:2018-05-2304:21:41【问题描述】:我已经设置了PayPal沙盒来测试我的PayPalExpress集成,但是每当我... 查看详情
模型思维2-如何增加用户对于某个商品的购买意愿?
T:代表需要该商品的需求、要求心理阀值Q:代表用户对该商品的需求判断值,例如区间范围是0-100的话,用户的心理阀值是60的话,如果该值大于60,代表用户会购买该商品,如果小于60的话,则用... 查看详情
Woo commerce 和 PayPal “很抱歉,我们无法使用您选择的资金来源完成您的购买”
】Woocommerce和PayPal“很抱歉,我们无法使用您选择的资金来源完成您的购买”【英文标题】:WoocommerceandPayPal"We\'resorry,butwecouldn\'tcompleteyourpurchaseusingthefundingsourceyouselected"【发布时间】:2020-09-0108:08:33【问题描述】:PayPal... 查看详情
Ruby on Rails 使用 API 从亚马逊购买商品?
】RubyonRails使用API从亚马逊购买商品?【英文标题】:RubyonRailsPurchaseitemfromAmazonusingAPI?【发布时间】:2018-06-0523:16:55【问题描述】:我想通过我的rails应用程序以编程方式自动在亚马逊上进行购买,因为我必须每周都手动进行相... 查看详情
githubbase04购物车(代码片段)
"""04要求用户输入总资产,例如:2000显示商品列表,让用户根据序号选择商品,加入购物车购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。附加:可充值、某商品移除购物车goods=["name":"电脑","price":1999,"na... 查看详情