HarmonyOS鸿蒙Next中撤销订阅后再去验证购买token,接口返回的purchaseTime不正确

HarmonyOS鸿蒙Next中撤销订阅后再去验证购买token,接口返回的purchaseTime不正确 关键词
华为应用内支付,沙盒测试,expirationDate,cancelTime

问题背景
沙盒测试,购买订阅型商品并自动续期,然后撤销订阅,在服务器侧会收到撤销订阅的通知,我们需要从通知中获取payOrderId、purchaseTime等订阅的详细信息。但是现在撤销订阅的通知,不返回latestReceiptInfo字段,于是我们尝试通过验证购买token接口获取订阅的详细信息,测试过程中,发现撤销订阅后验证购买token接口返回的purchaseTime、expirationDate、cancelTime时间不正确。

解决方案
于是我找到华为技术支持(可以提交工单:提交工单),对方告诉我,沙箱撤销后,对时间没有做转换,导致验证购买token接口查到的时间不对,这个问题后面会修改,正式环境不会有这样的问题。另外,撤销订阅以后,订阅会立即删掉,所以撤销订阅的通知不会返回订阅的详细信息。

PS
撤销是订阅级的,只退最新一期的钱,撤销之后如果想确认下这笔订单是不是真的失效了,可以通过已取消或者退费购买查询接口查询。


更多关于HarmonyOS鸿蒙Next中撤销订阅后再去验证购买token,接口返回的purchaseTime不正确的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于HarmonyOS鸿蒙Next中撤销订阅后再去验证购买token,接口返回的purchaseTime不正确的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中,撤销订阅后验证购买token时,如果发现purchaseTime不正确,可能是由于以下原因:

  1. 缓存问题:系统可能缓存了旧的购买信息,建议清除缓存后重新获取。
  2. 时间同步问题:确保设备时间与服务器时间同步,避免时间偏差导致数据不一致。
  3. 接口调用时机:撤销订阅后,可能需要等待一段时间才能获取到最新的购买信息,建议稍后重试。
  4. API版本兼容性:检查使用的API版本是否与当前系统版本兼容,必要时更新API。

建议在代码中添加日志,记录关键步骤,以便进一步排查问题。

回到顶部