使用同一测试帐户在多台设备上进行 Android 应用内结算 v3 测试

标签 android testing in-app-billing

在发布应用程序和使用 Billing Library v3 之前,我尝试在我的应用程序中测试实际购买情况。我在购买之前在其他设备上购买过的商品时遇到问题。

这是我的行为:

  1. 我签署了 .apk 并将其上传到开发人员控制台;
  2. 我补充说 实际购买项目到上传的 .apk;
  3. 我将我的非开发人员 gmail 帐户添加到开发人员控制台中的测试帐户。这 帐户在两个测试设备上都用作主帐户;
  4. 我将已签名的 .apk 上传到两个测试设备;
  5. 我在第一台设备上运行应用程序并购买了商品 - 一切正常;
  6. 现在我正尝试在其他设备上运行该应用程序。在启动时 应用程序检查已进行的购买。它说 之前购买的商品为空!但如果我再次尝试购买 在第二台设备上,它会返回“您已经购买了此商品”作为响应;

这是未发布的应用程序或测试帐户的问题吗?我确定发送的“开发人员有效负载”字符串在两个设备上是相同的,但我认为情况并非如此,因为在第二个设备上它不会事件检查有效负载,它只是在 inventory.getPurchase(SKU_OF_THE_ITEM) 上返回 null 作为响应对于 queryInventoryAsync()。

有人遇到同样的问题吗?

最佳答案

看来问题已经解决了。我的第二台设备上有 2 个帐户,我在未启动 Google Play 应用程序的情况下从辅助帐户切换到主帐户。它必须至少启动一次 - 它会显示某种“接受协议(protocol)”框,接受后应用程序中的购买将得到正确处理。希望这对某人有帮助。

关于使用同一测试帐户在多台设备上进行 Android 应用内结算 v3 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16211841/

相关文章:

android - 计费 API v3 IabHelper NullPointerException

java - 尝试使用 SimpleDateFormat 类通过 android kotlin 格式化 Unix 日期模式 (%Y-%m-%d),但没有结果

android - 处理 Android 的纹理大小限制

android - 图钉内带有用户图像的自定义标记

android - 如何在android中为图像启用(两根手指)放大/缩小功能

javascript - JavaScript Web 前端的测试驱动开发

testing - 使用 Testcafe 选择器 : withText then sibling

unit-testing - 为从中读取的函数填充 os.Stdin

android - 用户不符合此次购买的条件 Android inApp

android - 应用内结算和许可证测试帐户