登录需要Popup应用内购买问题?

时间:2017-03-28 09:51:34

标签: ios swift in-app-purchase in-app

我在我的应用程序中集成了应用程序内购买,它适用于购买和恢复项目。但是有一个问题,

当我使用 test1@gmail.com 购买商品时,其成功购买商品也可以恢复正常工作。

现在,我从我的设备上卸载了应用程序,同时清除了iTunes&应用商店。并再次安装。

当我点击恢复按钮时,则会显示两个Popup: 一个 test1@gmail.com ,第二个退出或创建用户

每当我从后台到前台时,每次都会显示“登录”弹出窗口。

注意:我还调用了finishTransaction方法。但它不适合我。

登录弹出窗口显示时无法调用一种方法。

enter image description here

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:0)

据我所知,这有两种情况。

  1. 有一个待处理的事务。 如果某些购买交易尚未完成,iOS将尝试自动进行该交易。

  2. 一些自动续订的订阅应该续签。 如果启用了自动续订设置并且订阅已过期,iOS也会自动为自动续订交易启动购买交易。

这是在将交易观察者添加到付款队列时触发的

[[SKPaymentQueue defaultQueue] addTransactionObserver: yourTransactionObserver];

无论哪种情况,您都可以在交易观察器中放置断点

- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions

并掌握正在处理的交易。

基本上,SKPaymentQueue没有功能来取消应用程序正在进行的交易,因此您需要继续进行该交易。

答案 1 :(得分:0)

如您所说,“现在,我已从设备上卸载了应用程序,还从iTunes&App Store中清除了凭据。并重新安装。”,您需要在设备上的iTunes中使用Apple帐户登录才能删除此弹出窗口。

答案 2 :(得分:-1)

这种情况有时会发生在沙盒环境中。一旦您的应用程序处于正常状态并且应用程序购买获得Apple批准,一切都将自动正常工作。

但是,您的应用内购买代码流程应该是正确的。如果您尚未登录,iOS会自动询问登录选项,否则会显示仅输入密码的弹出窗口,并且会自动填写用户名/电子邮件。