你一身傲骨怎能输:
你好针对你的疑问, 如果用户没有点弹窗 “OK”
说的就是用户没有明确同意把,那么支付流程就没有走完,“票据”也不会生成或下发到 app,通常不会有待处理交易(pending transaction)。
在苹果的支付流程里,并不会主动给开发者票据,只有用户触发了购买行为(包括自动续费/恢复购买)才会生成票据。
如果“弹窗没点OK”,不会有票据需要监听和上传,收不到票据。
但如果支付过程中 app 被杀死/退出/闪退,这时候如果有 pending 的事务,苹果会自动保存未完成的 transaction。下次启动你的 app(或者重新唤醒IAP流程),苹果的 SKPaymentQueue 会再次把未完成的 transaction push 到你的 app delegate(用 SKPaymentTransactionObserver)。