ios内购支付设置了manualFinishTransaction:true
然后我支付后立马杀掉进程再次回到支付页面二次验证订单成功后调用finishTransaction

- 发布:2022-09-19 18:20
- 更新:2023-11-08 17:15
- 阅读:995
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: window10
HBuilderX类型: 正式
HBuilderX版本号: 3.6.3
手机系统: iOS
手机系统版本号: iOS 14
手机厂商: 苹果
手机机型: iphone11
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
正常关闭订单
正常关闭订单
实际结果:
订单未关闭
订单未关闭
bug描述:
ios内购支付设置了manualFinishTransaction:true
然后我支付后立马杀掉进程,再次回到支付页面二次验证订单成功后调用finishTransaction方法报错提示Can not call this function when manualFinishTransaction is false 不能调用此函数
导致我二次验证掉单的,已经加了虚拟货币,再次点击同样的商品支付直接又加了货币
深蓝的一片海 (作者)
是按流程处理的呢,你们测试下了,这么大问题!!!!!如果我再次点击原来的金额去支付就能关闭,不点直接调用finishTransaction就提示Can not call this function when manualFinishTransaction is false ,我用原生的插件就没问题
2022-09-23 16:00
深蓝的一片海 (作者)
设置了manualFinishTransaction:true,至少不能提示Can not call this function when manualFinishTransaction is false吧!!
2022-09-23 16:05
DCloud_uni-ad_HDX
回复 深蓝的一片海: 在什么时机调用的 finishTransaction
2022-09-28 10:47
天生DR
回复 深蓝的一片海: 上传你的示例代码 文档有说明这个finishTransaction 必须在 设置了manualFinishTransaction:true 之后调用 你都杀掉进程 下次进来肯定没有再次显示设置为true
2022-09-28 15:42
深蓝的一片海 (作者)
回复 DCloud_uni-ad_HDX: 第二次进入支付页面,然后我去二次验证苹果支付成功未完成的订单,发现有返回的列表,然后我调用后端接口去验证,成功后就调用finishTransaction
2022-09-30 09:40
深蓝的一片海 (作者)
回复 天生DR: 那如果是这样,那这个掉单,漏单的二次验证完,怎么关闭这个订单呢,苹果会一直返回这个支付成功未完成的订单呀
2022-09-30 09:41
天生DR
回复 深蓝的一片海: 第二次进入支付页面时 理应先调一下 restore 这时候传上这个参数 manualFinishTransaction:true 会给你返回 已支付成功 未关闭的订单 再二次验证完后 调 finishTransaction 关单
2022-10-08 15:48