2016-11-15 29 views
4

我的应用程序使用Adyen托管支付页面(HPP) - 基于Web的在线支付流程 - SFSafariViewController(由Adyen推荐)。当一个付款流程完全发生在Safari内部时,这个工作非常好。SFSafariViewController在返回应用程序时丢失状态

但是一些银行使用他们原生的iOS应用程序来授权网络支付(通常在将用户ID输入网络流后输入PIN码)。当返回到我的应用程序时,Safari视图控制器经常重新加载其内容,在付款完成之前重置整个付款流程。 (同样的事情也经常发生,通过简单地访问任何其他应用程序 - 猜测它与内存消耗有关吗?)

有什么办法强制Safari视图控制器保持其当前状态,不管是什么?

回答

1

我在我的应用程序中发现相同的行为。在我们的例子中,我们没有使用Adyen。但行为是一样的。

每次应用程序在一段时间后返回前台,它都会丢失其状态并重新加载到原始状态。

我没有找到任何方法来避免这种行为。有没有办法强制SFSafariViewController保持其状态?

更新:我发现此行为仅发生在iOS 10.0.1中

+0

哇。有趣的是,我刚才看到了这一点(当我为同一个问题搜索时 - 假设它在上次解决它时遇到了一些麻烦,并且再次找到该线程)仍然存在。事实上,SFSafariViewController现在看起来不那么健忘! – villapossu

2

尽管我的答案与SFSafariViewController无关,但我建议您查看Adyen提供的新的Directory Lookup SDK:https://github.com/Adyen/adyen-dl-ios假设使用HPP代替HPP(在合适时),并提供更好的用户体验接受本地支付方式。

相关问题