Android Chrome Webview 无法访问 Google Pay

Posted

技术标签:

【中文标题】Android Chrome Webview 无法访问 Google Pay【英文标题】:Android Chrome Webview access to Google Pay is not working 【发布时间】:2019-09-16 01:13:40 【问题描述】:

尝试将 Google Pay(通过 Stripe)集成到我们的应用中。 在 android 7.0 上,原生 chrome 浏览器能够访问 Google Pay 数据并在 G-pay 中显示存储的卡 但是,当我们尝试从作为测试 Android 应用程序的一部分启动的 Chrome Webview 内部访问相同内容时,它无法获取 G-pay 数据。

这是限制还是错误?

任何指针表示赞赏。

【问题讨论】:

我的理解是这是网络视图内部的限制。如果您需要通过移动应用使用 Google Pay,您应该使用原生实现 (stripe.com/docs/mobile/android/google-pay) 或使用 Android 应用中的浏览器意图打开主 (Chrome) 浏览器:developer.android.com/guide/components/intents-common#Browser @duck 你的回答是正确的并且符合我的怀疑。也许您可以对其进行编辑,以便我可以接受它作为答案?我想尝试的另一个选项是 chrome 自定义标签 - developer.chrome.com/multidevice/android/customtabs 你认为它可以工作吗? 啊,太好了,我的猜测是自定义标签可能会作为它的启动 chrome 正常工作,但要确定我可能会尝试使用付款请求按钮打开一个页面(即使使用他们的演示应用程序 @987654324 @) 【参考方案1】:

如果您想通过移动应用使用 Google Pay,您应该使用原生实现,例如 offered by Stripe,或者使用 Android 应用中的 browser intent 打开移动 Chrome 浏览器

请注意,Apple Pay 也会发生类似的情况; Apple 允许您在应用程序中使用本机实现,或通过移动设备 Safari or SFSafariViewController 使用基于 Web 的 Apple Pay,但不能使用更严格的 Web 视图。

【讨论】:

以上是关于Android Chrome Webview 无法访问 Google Pay的主要内容,如果未能解决你的问题,请参考以下文章

无法在 android webview 上执行操作

Android WebView 调试方法

利用 Chrome 开发者工具远程调试 Android 中的原生 WebView

强制开启android webview debug模式使用Chrome inspect

在Chrome调试WebView内页面(Android环境)

Android通过Chrome Inspect调试WebView的H5 App出现空白页面的解决方法(不需要FQ)