我想实现 Apple Pay 网络版。我对沙箱和生产的文档感到有点困惑。 我使用的是装有 Sierra 的 Mac mini(2012 年末)和装有 IOS 10 的 iPad mini 3。
您能帮我了解沙盒测试需要什么吗?我正在关注:Apple Pay Sandbox Testing .
- 两台设备均使用同一 WIFI,蓝牙已开启,切换已开启且 AirDrop 已开启。
- 我创建了一个沙盒用户,并使用它在两台设备上登录 iCould。
- 我在 iPad 的电子钱包应用中添加了一张测试信用卡
- 我需要配置商户 ID、证书和商户域吗?
我正在使用我在这里找到的这个简单的代码。我无法让 canMakePayments() 返回 true。我收到:“ApplePay 可以在此浏览器上使用,但当前尚未激活。”
window.onload = function() {
if (window.ApplePaySession) {
var merchantIdentifier = 'example.com.store';
var promise = ApplePaySession.canMakePaymentsWithActiveCard(merchantIdentifier);
promise.then(function (canMakePayments) {
if (canMakePayments) {
console.log("Hi, I can do ApplePay");
document.getElementById("applePay").style.display = "block";
}
else {
console.log("ApplePay is possible on this browser, but not currently activated.");
document.getElementById("got_notactive").style.display = "block";
}
});
}
else {
console.log("ApplePay is not available on this browser");
document.getElementById("notgot").style.display = "block";
}
}
最佳答案
我遇到了类似的问题,ApplePaySession.canMakePaymentsWithActiveCard(merchantIdentifier)
未在 promise 中返回 true
。
当您在 macOS Safari 上满足您为沙盒用户提到的各种条件(配对、iCloud 等)时,使用 ApplePaySession.canMakePayments()
确实返回 true
,并且可以通过移交给 iPhone 和 Apple Watch 成功处理付款。
如果能够确定缺少什么,使得 ApplePaySession.canMakePaymentsWithActiveCard(merchantIdentifier)
在 macOS 上看起来不会返回 true
,这当然是件好事。它似乎在 iOS 上运行良好。
关于web - 从网页版 Apple Pay 开始,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39728878/