iap内购支付,跳出app到签约支付,然后支付成功后回到app,iap.restoreComplateRequest返回的是空。

- 发布:2021-08-26 05:13
- 更新:2021-08-26 05:13
- 阅读:554
产品分类: HTML5+
HBuilderX版本号: 3.2.2
手机系统: iOS
手机系统版本号: iOS 13.4
手机厂商: 苹果
手机机型: iphone11
打包方式: 云端
操作步骤:
预期结果:
希望签约支付成功后返回app可以调用successCB拿到票据后台验证。
希望签约支付成功后返回app可以调用successCB拿到票据后台验证。
实际结果:
签约后自动支付,回到app拿不到票据,无法验证支付是否成功,直接丢单。
签约后自动支付,回到app拿不到票据,无法验证支付是否成功,直接丢单。
bug描述:
官方文档
这篇文章说的“恢复购买方法(获取已购的非消耗性商品和订阅商品)”,然后又说“注意:如果用户在支付过程中退出了App,或其他情况造成的丢单的消耗类型商品在支付完成后,首次调用该接口可返回支付凭证”。
但是目前测试出来,跳出app到appstore签约并支付后,回到app拿不到刚才支付的那笔订单。
iap内购项目是消耗型项目。
所以,消耗型到底能不能拿到最新支付的订单票据?目前这种实现方式,如果已签约没任何问题,未签约直接100%掉单啊。
目前根据官方的1,2,3,4,5步骤,可以实现漏单补,但是必须得二次发起支付,调用plus.payment.request,然后才会触发补上一单掉单的现象。不然iap.restoreComplateRequest为空。
另外,多次调用iap.restoreComplateRequest的话,app会闪退。
