GooglePlay:您请求的商品无法购买
GooglePlay: The item you requested is not available for purchase
我从 Google Play IAB API;
获得以下信息
The item you requested is not available for purchase
然而,我已经成功地针对静态响应进行了测试,此外,可用产品列表中的以下代码 returns myProductId
;
ArrayList<String> skuList = new ArrayList<String> ();
skuList.add("myProductId");
Bundle querySkus = new Bundle();
querySkus.putStringArrayList("ITEM_ID_LIST", skuList);
Bundle skuDetails = service.getSkuDetails(3, activity.getPackageName(), "inapp", querySkus);
另外我还有;
- 发布了测试版 APK
- 将测试用户添加到测试版并通过 URL
选择加入
- 使用测试用户(gmail 帐户)登录设备
- 将具有相同版本代码的签名 APK 推送到设备
- 激活产品
我使用的购买码是;
Bundle buyIntentBundle = service.getBuyIntent(3, activity.getPackageName(), "myProductId", "inapp", "payload");
PendingIntent pendingIntent = buyIntentBundle.getParcelable("BUY_INTENT");
activity.startIntentSenderForResult(pendingIntent.getIntentSender(), 1001, new Intent(), Integer.valueOf(0), Integer.valueOf(0), Integer.valueOf(0));
最后,logcat显示如下;
D/Finsky: [1] PurchaseFragment.onStateChange: Error: PurchaseError{type=3 subtype=0}
D/Finsky: [1] PurchaseFragment.onStateChange: Purchase failed: PurchaseError{type=3 subtype=0}
虽然还有其他问题与此问题相关,但 none 已为我解决;
- the item you requested is not available for purchase
- 产品有效
- The item you have requested is not available for purchase
- 产品
android.test.purchased
的静态响应测试成功
- Android In App Purchase “Item that you have requested is not available for purchase” Error
- 测试用户登录
应用程序必须通过选择加入 URL. 从 Playstore 安装,这将有助于应用程序从 LICENSING & IN-APP BILLING
(Base64 编码)授权。
编辑:我们可以通过使用 adb 工具安装来测试设备上签名的 apk。和
1.The android:versionCode 和 android:versionName attributes 值在您正在安装的应用程序的 AndroidManifest.xml 匹配开发者控制台中 APK 的值。
2.Your 应用程序使用 相同的证书 签名,该证书与您上传到 Developer Console 的 APK 所用的证书相同,然后再将其安装到您的设备上。
http://developer.android.com/training/in-app-billing/test-iab-app.html
在我上次测试 12 小时后,这神奇地起作用了。症状是:
- 如果应用程序是通过 ADB(发布并签名)安装到设备上的,则无法购买
- 如果应用程序是通过 Google 播放(下载)
安装的,则可以正常购买
我不确定究竟是什么解决了这个问题。在等待 12 小时之前我;
- 从直接使用
IInAppBillingService
切换到使用 Google 的 IABHelper
。直接效果仍然是产品无法购买,但是文本现在显示为红色而不是黑色(什么?)并且 DFinsky 错误更改为子类型 4; PurchaseError{type=3 subtype=4}
。我还注意到我在直接使用 IInAppBillingService
时没有使用 base64EncodedKey。
- 切换到多个 APK(可能是转移注意力)
- 开始了 alpha 测试(之前只使用 beta 测试)
- 创建了一个新的 gmail 帐户并将其添加到测试人员
即使进行了所有这些更改,问题仍然存在,所以我上床睡觉,今天早上醒来,没有进一步的更改,它就起作用了。 FML.
选择加入 url 帮我做了。将其发送给您的用户 - 它会向用户注册他们自己的 Play 商店应用程序。那是中间人,似乎需要通知此人是测试人员。
经过将近几天的尝试,我们意外地成功了。
我们不得不 "LEAVE THE PROGRAM"(选择加入页面上的 link)并再次重新进入程序。然后终于成功了...
在购买应用内订阅时,我在正确的位置找到了下面列表中的所有内容。
创建签名 apk 并发布到 alpha 通道
已将测试人员电子邮件 ID 添加到 许可测试
已将测试人员电子邮件 ID 添加到 封闭轨道 alpha 测试
选择成为测试员
测试 ID 与开发者帐户的 ID不同
在 android 设备上,不在模拟器上
已从 Play 商店下载应用程序
我仍然收到此错误消息 “找不到您正在寻找的项目”。
在浪费了 2-3 天之后,我发现只有在 Play 商店中设置了一些支付模式后它才能工作。
虽然大部分答案都与旧的 IAB 购买有关,但我实施了新的结算客户端 API,它是 -
implementation 'com.android.billingclient:billing:1.0'
,好不容易才找到答案
如果有人也是这种情况,添加支付方式可能会帮助您克服这个错误。您甚至需要添加一个来测试它,但是,它将不会对添加为许可证测试人员的电子邮件 ID 收费。
我从 Google Play IAB API;
获得以下信息The item you requested is not available for purchase
然而,我已经成功地针对静态响应进行了测试,此外,可用产品列表中的以下代码 returns myProductId
;
ArrayList<String> skuList = new ArrayList<String> ();
skuList.add("myProductId");
Bundle querySkus = new Bundle();
querySkus.putStringArrayList("ITEM_ID_LIST", skuList);
Bundle skuDetails = service.getSkuDetails(3, activity.getPackageName(), "inapp", querySkus);
另外我还有;
- 发布了测试版 APK
- 将测试用户添加到测试版并通过 URL 选择加入
- 使用测试用户(gmail 帐户)登录设备
- 将具有相同版本代码的签名 APK 推送到设备
- 激活产品
我使用的购买码是;
Bundle buyIntentBundle = service.getBuyIntent(3, activity.getPackageName(), "myProductId", "inapp", "payload");
PendingIntent pendingIntent = buyIntentBundle.getParcelable("BUY_INTENT");
activity.startIntentSenderForResult(pendingIntent.getIntentSender(), 1001, new Intent(), Integer.valueOf(0), Integer.valueOf(0), Integer.valueOf(0));
最后,logcat显示如下;
D/Finsky: [1] PurchaseFragment.onStateChange: Error: PurchaseError{type=3 subtype=0}
D/Finsky: [1] PurchaseFragment.onStateChange: Purchase failed: PurchaseError{type=3 subtype=0}
虽然还有其他问题与此问题相关,但 none 已为我解决;
- the item you requested is not available for purchase
- 产品有效
- The item you have requested is not available for purchase
- 产品
android.test.purchased
的静态响应测试成功
- 产品
- Android In App Purchase “Item that you have requested is not available for purchase” Error
- 测试用户登录
应用程序必须通过选择加入 URL. 从 Playstore 安装,这将有助于应用程序从 LICENSING & IN-APP BILLING
(Base64 编码)授权。
编辑:我们可以通过使用 adb 工具安装来测试设备上签名的 apk。和
1.The android:versionCode 和 android:versionName attributes 值在您正在安装的应用程序的 AndroidManifest.xml 匹配开发者控制台中 APK 的值。
2.Your 应用程序使用 相同的证书 签名,该证书与您上传到 Developer Console 的 APK 所用的证书相同,然后再将其安装到您的设备上。
http://developer.android.com/training/in-app-billing/test-iab-app.html
在我上次测试 12 小时后,这神奇地起作用了。症状是:
- 如果应用程序是通过 ADB(发布并签名)安装到设备上的,则无法购买
- 如果应用程序是通过 Google 播放(下载) 安装的,则可以正常购买
我不确定究竟是什么解决了这个问题。在等待 12 小时之前我;
- 从直接使用
IInAppBillingService
切换到使用 Google 的IABHelper
。直接效果仍然是产品无法购买,但是文本现在显示为红色而不是黑色(什么?)并且 DFinsky 错误更改为子类型 4;PurchaseError{type=3 subtype=4}
。我还注意到我在直接使用IInAppBillingService
时没有使用 base64EncodedKey。 - 切换到多个 APK(可能是转移注意力)
- 开始了 alpha 测试(之前只使用 beta 测试)
- 创建了一个新的 gmail 帐户并将其添加到测试人员
即使进行了所有这些更改,问题仍然存在,所以我上床睡觉,今天早上醒来,没有进一步的更改,它就起作用了。 FML.
选择加入 url 帮我做了。将其发送给您的用户 - 它会向用户注册他们自己的 Play 商店应用程序。那是中间人,似乎需要通知此人是测试人员。
经过将近几天的尝试,我们意外地成功了。 我们不得不 "LEAVE THE PROGRAM"(选择加入页面上的 link)并再次重新进入程序。然后终于成功了...
在购买应用内订阅时,我在正确的位置找到了下面列表中的所有内容。
创建签名 apk 并发布到 alpha 通道
已将测试人员电子邮件 ID 添加到 许可测试
已将测试人员电子邮件 ID 添加到 封闭轨道 alpha 测试
选择成为测试员
测试 ID 与开发者帐户的 ID不同
在 android 设备上,不在模拟器上
已从 Play 商店下载应用程序
我仍然收到此错误消息 “找不到您正在寻找的项目”。
在浪费了 2-3 天之后,我发现只有在 Play 商店中设置了一些支付模式后它才能工作。
虽然大部分答案都与旧的 IAB 购买有关,但我实施了新的结算客户端 API,它是 -
implementation 'com.android.billingclient:billing:1.0'
,好不容易才找到答案
如果有人也是这种情况,添加支付方式可能会帮助您克服这个错误。您甚至需要添加一个来测试它,但是,它将不会对添加为许可证测试人员的电子邮件 ID 收费。