WKWebview 上的 ApplePay

问题描述 投票:0回答:5

我正在尝试在 WKWebView 上加载 ApplePay 弹出窗口。我通过实施它做了我最初的腿部工作,但它没有加载。

我需要实施一些额外的东西才能让它发挥作用吗?苹果也没有关于苹果支付的适当文件。

ios iphone wkwebview applepay applepayjs
5个回答
7
投票

似乎有解决方案:https://webkit.org/blog/9674/new-webkit-features-in-safari-13/

WKWebView 中的 Apple Pay 在 iOS 13 中,WKWebView 中加载的网页现在可以接受 Apple Pay。为了保护 WKWebView 中 Apple Pay 交易的安全性,Apple Pay 不能与 WKUserScript 或 evaluateJavaScript(_:completionHandler:) 等脚本注入 API 一起使用。

如果在网页使用Apple Pay之前调用这些API,Apple Pay将被禁用。如果网页在调用 evaluateJavaScript(_:completionHandler:) 之前使用 Apple Pay,则将使用非零 NSError 调用完成处理程序。每次导航顶部框架时都会重置这些限制。


4
投票

Apple Pay 仅在 SFSafariViewController 中支持,在 UIWebView 和 WKWebview 中均不支持。


2
投票

我认为你需要使用 SFSafariViewController.

iOS 10。所有带有安全元件的 iOS 设备都支持 Apple Pay JavaScript。 Safari 和 SFSafariViewControllerobjects 都支持它。


2
投票

iOS 16 解除了上述 iOS 13 限制:

https://developer.apple.com/documentation/safari-release-notes/safari-16-release-notes

Apple Pay 新功能: 添加了允许将脚本注入到已使用 Apple Pay 的 WKWebView 的支持(反之亦然)。


0
投票

即使使用脚本注入,WKWebView 上的 Apple Pay 似乎也可以在 Safari 版本 16+ 上使用。

https://developer.apple.com/documentation/safari-release-notes/safari-16-release-notes

Apple Pay 新功能:添加了允许将脚本注入已使用 Apple Pay 的 WKWebView 的支持(反之亦然)。

© www.soinside.com 2019 - 2024. All rights reserved.