如何在 Chrome 上模拟 iOS 用户代理,以启用 Apple Pay 显示?

Posted

技术标签:

【中文标题】如何在 Chrome 上模拟 iOS 用户代理,以启用 Apple Pay 显示?【英文标题】:How to emulate iOS user agent on Chrome, to enable Apple Pay to show? 【发布时间】:2017-01-26 20:19:20 【问题描述】:

仅出于开发原因,如何让 Chrome 在非 Apple 桌面上运行,从而欺骗“Apple Pay”按钮在启用的网站上显示自己?

“Apple Pay”按钮不必是功能性的,只需显示即可。

【问题讨论】:

【参考方案1】:

这个“技巧”对我的团队有用,可以启用模拟 Apple Pay 支持。但是请注意,Apple Pay 按钮的样式仅适用于使用 custom CSS rules 的 ios 设备

window.ApplePaySession =  canMakePayments: function()  return true; , 
canMakePaymentsWithActiveCard: function()  return 
$.Deferred().resolve(true).promise();  ;

假设:

sn-p 在您的 Apple Pay 会话验证代码的其余部分之前运行 您正在使用 jquery deferred 将 promise 解析为 true

【讨论】:

【参考方案2】:

作为@anibe的回答的一个小更新,还需要添加一个回调方法来返回支持的版本,比如:

<script>
    window.ApplePaySession =  
        canMakePayments: function()  return true; , 
        supportsVersion: function()  return 8; ,
        canMakePaymentsWithActiveCard: function()  
            return jQuery.Deferred().resolve(true).promise(); 
         
    ;
</script>

【讨论】:

以上是关于如何在 Chrome 上模拟 iOS 用户代理,以启用 Apple Pay 显示?的主要内容,如果未能解决你的问题,请参考以下文章

在 chrome 响应式模拟器中重定向更改用户代理

当用户代理设置为 iOS 时,为啥我的 iTunes 链接无法在 Chrome 中打开?

如何用chrome在电脑上模拟微信内置浏览器

您如何在桌面和移动 Chrome 用户代理之间进行检测?

如何使用 PHP 检测“Google Chrome”作为用户代理?

如何使用公司代理为 iOS 模拟器设置 Charles 代理