我正在使用Google Play IABv3,并希望能够轻松测试我所做的事情(并不令人惊讶)。由于IABv3所有项目都进行了管理,并且由应用程序使用它认为耗材的项目。在Google Play中测试非易耗品IAP项目
我不确定测试非消耗性产品的预期工作流程是什么。为了能够多次测试购买流程,您需要能够删除以前的购买。然而,购买意图是非消耗性的,所以我们显然不希望添加任何消耗它的代码(因为它可能意外地漏过并且删除真正的用户购买)。
我想通过购买清算测试用户帐户的一些方法,我怀疑是可能的,因为没有“真正的”测试用户。
建议如何做到这一点?
这不起作用,因为“android.test.purchased”被视为被管理产品,这意味着您需要在再次测试之前消耗。当然,你可以添加一个if语句直接在购买时使用它,但这会产生许多不同的不需要的副作用。 – alaeus
@alaeus所以最好的解决方案是添加代码以仅在调试版本中使用这些项目,并在真实产品ID上测试您的应用程序。您可以根据构建类型/风格创建一个类的多个不同实现。调试版本中的一个会消耗项目,但发布版本在调用其方法时不会执行任何操作。 – tomrozb
这似乎很容易出错,因为它只能由开发人员使用,或让测试人员不使用发布版本。另一个解决方案是制作一个单独的未发布的应用程序(使用相同的ID),用于消费所有购买。虽然这感觉过度。 – alaeus